无法运行 shell 脚本

无法运行 shell 脚本

所以我有这个脚本:

#!/bin/bash
# Flips the screen (hopefully)

syntax_error=0
orientation=0

current_orientation="$(xrandr -q --verbose | grep 'connected' | egrep -o  '\) (normal|left|inverted|right) \(' | egrep -o '(normal|left|inverted|right)')"
case $current_orientation in
        normal)
                current_orientation=0
        ;;
        left)
                current_orientation=1
        ;;
        inverted)
                current_orientation=2
        ;;
        right)
                current_orientation=3
        ;;
esac

if [ $current_orientation -eq 0 ]; then
        orientation=2
fi

if [ $current_orientation -eq 2 ]; then
        orientation=0
fi
method=evdev

# LENOVO S10-3t CHANGE ==> Hard Coded my device number to 11!!!!!!!!

device=11

swap=0
invert_x=0
invert_y=0
real_topx=0
real_topy=0
real_bottomx=4020
real_bottomy=4020

case $orientation in
        0)
                swap=0
                invert_x=0
                invert_y=0
                topx=$real_topx
                topy=$real_topy
                bottomx=$real_bottomx
                bottomy=$real_bottomy
        ;;
        1)
                swap=1
                invert_x=1
                invert_y=0
                topx=$real_topx
                topy=$real_topy
                bottomx=$real_bottomy
                bottomy=$real_bottomx
        ;;
        2 )
                swap=0
                invert_x=1
                invert_y=1
                topx=$real_topx
                topy=$real_topy
                bottomx=$real_bottomx
                bottomy=$real_bottomy
        ;;
        3 )
                swap=1
                invert_x=0
                invert_y=1
                topx=$real_topx
                topy=$real_topy
                bottomx=$real_bottomy
                bottomy=$real_bottomx
        ;;
esac

if [ $method = "evdev" ]; then
        xinput set-prop "$device" "Evdev Axes Swap" $swap
        xinput set-prop "$device" "Evdev Axes Swap" $swap
        xinput set-prop "$device" "Evdev Axis Inversion" $invert_x $invert_y
        xinput set-prop "$device" "Evdev Axis Calibration" $topx $bottomx $topy $bottomy
        if [ $orientation = 2 ]; then           
                xrandr -o inverted
        fi
        if [ $orientation = 0 ]; then
                xrandr -o normal
        fi
fi

#

它用于我的联想 S10-3t 中的翻转屏幕。我从上网本的 wiki 页面复制了它,并在顶部添加了 #!/bin/bash。文件名是 flipscreen.sh。我该如何让它工作?

答案1

右键点击文件,然后选择“属性”。从对话框中勾选“允许以程序方式执行文件”,如下图所示。然后关闭对话框并双击要执行的文件。

替代文本

答案2

首先你需要使你的文件可执行,

在目录类型中,

sudo chmod+x flipscreen.sh

sudo bash flipscreen.sh

答案3

OpenNingia 的答案是可行的,但是对于稍后会使用谷歌搜索的人来说,您也可以通过命令行进行操作:

打开终端,然后转到脚本所在的文件夹

chmod +x <yourScript>

然后执行如下命令

./<yourScript>

答案4

双击该文件。对话框会询问您该文件是否可执行,您要做什么。单击“运行”,一切就绪。

相关内容