Linux 管理员 - 变量
Bash 中的变量使用方式与其他脚本语言类似。语法可能因 Perl、Python 和 Ruby 等语言而异。
我们首先要注意的是,BASH 变量有两种基本类型:全局变量或环境变量以及脚本变量或局部变量。
全局变量或环境变量 在所有 shell 和脚本中设置。可以使用 env 或 printenv 命令显示环境变量 −
bash-3.2# printenv SHELL=/bin/bash TERM=xterm-256color USER=root SUDO_USER="rick cardon" SUDO_UID=501 USERNAME=root MAIL=/var/mail/root PATH=/usr/local/pear/bin:/Library/Frameworks/Python.framework/Versions/3.5/bin: /opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/ PWD=/home/rdc/Desktop LANG=en_US.UTF-8
常见语法是环境变量使用大写,局部变量使用小写脚本。这些是脚本中使用的变量,假设脚本不会设置或更改 shell 环境变量。
脚本或局部变量只能由当前 shell 访问。
#!/bin/bash num = 0 while [ $num -lt 100 ] do num = $[$num+1] echo $num if [ $((num % 10)) = 0 ]; then sleep 5s fi done echo $PATH
上面的小脚本只是简单地递增到 20,每 5 次迭代暂停 5 秒,然后回显一个环境变量:当前用户的路径 −
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 /usr/local/pear/bin:/Library/Frameworks/Python.framework/Versions/3.5/bin:/opt/ local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
如果您希望变量可以在 shell 之外看到,则必须使用以下导出命令。
#!/bin/bash export MY_NEW_GLOBAL = "I am Global"
linux_admin_shell_scripting.html