📅  最后修改于: 2023-12-03 15:13:37.555000             🧑  作者: Mango
在Shell-Bash中,我们可以通过编写脚本文件的方式来实现一些自动化操作。脚本文件一般以.sh为后缀,可以通过在终端中运行来执行脚本文件的内容。例如:
#!/bin/bash
echo "Hello World!"
上述脚本文件可以通过在终端中输入以下命令来执行:
./hello.sh
但是有些程序员可能会遇到这样的问题:将脚本文件从终端中复制到桌面,用鼠标双击打开却发现无法运行。这是因为桌面文件没有运行权限,需要我们手动添加运行权限。我们可以通过以下命令在终端中为脚本文件添加运行权限:
chmod +x ~/Desktop/hello.sh
添加成功后,我们就可以通过双击桌面的hello.sh文件来运行脚本了。
但是需要注意的是,有些程序员可能会在脚本文件的开头加入以下代码:
#!/bin/bash
cd "$(dirname "$0")"
这段代码的作用是将当前工作目录切换到脚本文件所在的目录,这样脚本中的相对路径会更加准确。但是这样的话,如果我们通过双击桌面文件的方式来运行脚本,脚本文件所在的目录会变成桌面的目录,这显然不是我们想要的结果。
因此,我们应该在编写脚本文件时,尽量避免使用cd命令或者使用绝对路径来代替相对路径,这样即使我们在桌面文件中运行脚本,也能够保证脚本能够正常运行。
综上所述,虽然bash文件可以从终端运行,但需要注意的是在桌面运行时需要手动添加运行权限,并且要避免使用cd命令或绝对路径来代替相对路径。