1.3.4 脚本执行
这一节,我们从 脚本执行、脚本调试、小结 三个方面来学习。
脚本执行
脚本执行方法
方法1:
bash /path/to/script-name 或 /bin/bash /path/to/script-name (强烈推荐使用)
方法2:
/path/to/script-name 或 ./script-name (当前路径下执行脚本)
方法3:
source script-name 或 . script-name (注意“.“点号)
方法1变种:
cat /path/to/script-name | bash
bash /path/to/script-name
脚本执行说明
1、脚本文件本身没有可执行权限或者脚本首行没有命令解释器时使用的方法,我们推荐用bash执行。
使用频率:☆☆☆☆☆
2、脚本文件具有可执行权限时使用。
使用频率:☆☆☆☆
3、使用source或者.点号,加载shell脚本文件内容,使shell脚本内容环境和当前用户环境一致。
使用频率:☆☆☆
使用场景:环境一致性
执行示例
方法1:
[root@localhost ~]# /bin/bash get_netinfo.sh
IP: 10.0.0.12
NetMask: 255.255.255.0
Broadcast: 10.0.0.255
MAC Address: 00:0c:29:23:23:8c
方法2:
[root@localhost ~]# ./get_netinfo.sh
bash: ./get_netinfo.sh: 权限不够
[root@localhost ~]# ll get_netinfo.sh
-rw-r--r-- 1 root root 521 6月 7 20:41 get_netinfo.sh
[root@localhost ~]# chmod +x get_netinfo.sh
[root@localhost ~]# ./get_netinfo.sh
IP: 10.0.0.12
NetMask: 255.255.255.0
Broadcast: 10.0.0.255
MAC Address: 00:0c:29:23:23:8c
方法3:
[root@localhost ~]# source get_netinfo.sh
IP: 10.0.0.12
NetMask: 255.255.255.0
Broadcast: 10.0.0.255
MAC Address: 00:0c:29:23:23:8c
[root@localhost ~]# chmod -x get_netinfo.sh
[root@localhost ~]# ll get_netinfo.sh
-rw-r--r-- 1 root root 521 6月 7 20:41 get_netinfo.sh
[root@localhost ~]# source get_netinfo.sh
IP: 10.0.0.12
NetMask: 255.255.255.0
Broadcast: 10.0.0.255
MAC Address: 00:0c:29:23:23:8c
方法1变种:
[root@localhost ~]# cat get_netinfo.sh | bash
IP: 10.0.0.12
NetMask: 255.255.255.0
Broadcast: 10.0.0.255
MAC Address: 00:0c:29:23:23:8c
[root@localhost ~]# bash < get_netinfo.sh
IP: 10.0.0.12
NetMask: 255.255.255.0
Broadcast: 10.0.0.255
MAC Address: 00:0c:29:23:23:8c