目的:自我整理,自我回顾,自我反省!
内容:干货!干货!!干货!!!
附加:不足之处希望大家指正,能给像我一样的菜鸟一点启发就最好啦。仅仅是启发。。。
感谢:感谢老男孩(老看您的博文和视频,O(∩_∩)O哈哈~),当然还有网上的各路技术大牛,参考书籍《UNIX shell》
Bash shell 脚本结构
#/bin/sh | shbang行,脚本解释器。 如:#/bin/csh,#/bin/awk...等 |
# | 注释。 如:This doc is writed chbo. |
shell元字符或通配符 | *,'',"",?,[],|,>,>>等 如:rm ./* |
显示输出 | echo "Hello,Chbo." |
局部变量 | var=value var='value' var="value1 value2" ---命令结果赋值给变量--- var=`cmd` var=$(cmd) |
环境变量 | ---临时生效--- export var=value var=value ;export var ---永久生效--- 写入:/root/.bash_profile /root/.bashrc 常写入:/etc/profile 脚本目录:/etc/profile.d |
查看变量 | echo $var_name echo $PATH |
特殊变量 | $0 :打印自身 $n :${10} $? :echo $? 判断命令执行结果 $# :传参个数 如: [root@chboa 02]# cat 4.sh [ $# -ne 2 ] && { echo "must two" exit 1 } echo haha |
传参 | ---交互式--- [root@chbo ]# read -t 5 -p "pls input:" a pls input:33 [root@chbo ]# echo $a 33 ---非交互式--- var1=$1 var2=$2 |
算术运算 | 1、((n=1+2)) 2、n=`expr 5 + 9` 3、let n=1+2 4、n=`echo 3+3|bc` 5、n=$[2+3] |
条件测试 | 方式一:test 方式二:[] 方式三:[[]] ---数值比较-------------------------------- -eq -ge -gt -le -lt -ne 如:[$1 -eq $2] ---字符串比较------------------------------ = != -n str1 检查str1的长度是否非0 -z str1 检查str1的长度是否为0 如: [ "$str1" = "$str2" ] [ -n "$str1" ]--->检查一个变量是否含有数据 注意: 1、加 “ ” 2、=两边必须有空格 ---文件比较-------------------------------- -e -d -f -r -w -x(excute) -s(size) -nt (new than) -O 检查文件是否存在并属于当前用户所有 -G 检查文件是否存在默认组与当前用户相同 例如: [ -s $file ] 检查文件是否存在并非空 [ $file1 -nt $file2 ] 检查file1比file2新 |
条件语句 | if [ -f $file ] then echo 0 else echo 1 fi <===> [ -f $file ]&&echo 0||echo 1 ------------------------------------------- if [ ] then statements elif then statements elif then statements else statements if ------------------------------------------- case var_name in pattern1) statements ;; pattern2) statements ;; pattern3) statements ;; *) default value ;; esac |
循环语句 | for n in `seq 10` do echo 10.0.0.$n done --------------------------- while [ ] do commands done ---------------------------- until [ ] do commands done |
函数 | function name(){ 指令 return n } 执行:
|
脚本的执行 |
|
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。