在本教程中介绍创建bash脚本并使用chmod命令使脚本可执行,无需脚本前面加上sh或bash命令就可以运行它。
创建脚本文件
第一步是使用以下命令创建一个扩展名为.sh的新文件:
[root@localhost ~]# touch hello_script.sh
写一个简单的脚本
使用vim编辑器打开新创建的文件,将以下bash脚本添加到文件中:
[root@localhost ~]# vim hello_script.sh
下面是添加到文件中的脚本内容:
#!/bin/bash echo "Hello World"
编辑完,保存并退出。

执行Bash脚本
有两种方法可以运行bash文件。第一种是通过使用bash或sh命令。另一种将文件添加可执行权限,就可以直接运行。让我们运行以下命令以使用bash或sh命令执行bash脚本。
[root@localhost ~]# sh hello_script.sh
Hello World
[root@localhost ~]# bash hello_script.sh
Hello World

为脚本文件设置可执行权限
执行bash脚本的第二种方法是设置可执行权限。
[root@localhost ~]# chmod +x hello_script.sh

可以看到hello_script.sh文件已经又x可执行权限了。
执行脚本
将可执行权限分配给脚本后,可以不带bash命令直接运行脚本,如下所示:
[root@localhost ~]# ./hello_script.sh
Hello World

实例
在下面的示例中,我将编写并执行一个bash脚本以从源目录到目标目录进行备份:
[root@localhost ~]# vim backup_script.sh
下面内容粘贴到backup_script.sh文件中。
#!/bin/bash
TIME=`date +%Y_%m_%d`
DESTINATION=/tmp/backup-$TIME.tar.gz
SOURCE=/var/log
tar -zcvf $DESTINATION $SOURCE

保存脚本文件,并退出。为脚本文件添加可执行权限:
[root@localhost ~]# chmod +x backup_script.sh
运行脚本:
[root@localhost ~]# ./backup_script.sh

总结
在本教程中介绍创建bash脚本并使用chmod命令使脚本可执行,无需脚本前面加上sh或bash命令就可以运行它。
网友评论