运行第一个shellscript的问题

时间:2019-04-23 13:50:37

标签: linux bash shell scripting

我正在尝试在bash中创建我的第一个shell脚本。我已经创建了代码,并且设法将脚本保存在主目录中,但是它无法运行。首先,我尝试使用以下命令从主目录运行它:./testscript.sh,并以“ 权限被拒绝”作为响应,然后我尝试使用sudo ./testscript.sh,然后使用“ ”命令找不到”。

这是我的脚本:

#!/bin/bash  

mkdir -p/home/filer
touch /home/filer/fil1
touch /home/filer/fil2
touch /home/filer/fil3
tar-zcvf file.tar.gz /home/filer

因此,我尝试创建一个脚本,该脚本将在我的主目录中创建一个名为“ filer”的目录,使用touch在“ filer”目录中创建3个单独的文件,然后从整个目录中创建tar.archive。文件管理器”目录。我认为脚本是正确的,我只能用一只手来运行脚本。

1 个答案:

答案 0 :(得分:0)

除了几次输入错误(mkdir -p/path-> mkdir -p /pathtar-zcvf ...-> tar -zcvf ...)以外,您还应该参考主目录使用$HOME环境变量。 /home/filer是绝对目录路径,我假设它不是您的实际主目录。

#!/bin/bash

mkdir -p $HOME/filer
touch $HOME/filer/fil1
touch $HOME/filer/fil2
touch $HOME/filer/fil3
tar -zcvf file.tar.gz $HOME/filer

您可以执行脚本./testscript.sh作为bash testscript.sh./testscript.sh

在第二种情况下,脚本需要具有适当的可执行权限。 chmod +x ./testscript.sh赋予其完整的可执行权限。