echo
|
|
如何运行shell文件
终端输入sh 脚本的文件名.sh
变量
|
|
脚本参数
传递参数:
在终端输入sh 脚本的文件名.sh 参数1 参数2 参数3
|
|
if
注意必须以fi结尾
|
|
for
|
|
while
|
|
until
与while相反
|
|
case
必须以esac结尾每个分支有两个分号,*)表示不匹配的分支
|
|
shell支持break和continue
函数
|
|
函数获取参数的方法与脚本获取参数方法一致
引入其他脚本
使用.符号引入其他sh脚本123. ./test1.sh# 或者使用sourcesource ./test1.sh
字符串
|
|
数组
|
|
关系运算符
算数运算符
+,-,*,/,%,=,==,!=
关系运算符
-eq相等?-ne不等?-gt大于?-lt小于?-ge大于等于?-le小于等于?
布尔运算符
!非-o或-a与
逻辑运算符
&&逻辑与||逻辑或
字符串运算符
=相等?!=不等?-z $str长度为0?-n $str长度不为0?$str为空?
文件测试运算符
-d $file目录?-f $file普通文件?-r $file可读?-w $file可写?-x $file可执行?-s $file0字节?-e $file是否存在
Shell重定向
command > file将输出重定向到filecommand < file将输入重定向到filecommand >> file将输出追加到filen > file将文件描述符为 n 的文件重定向到 filen >> file将文件描述符为 n 的文件以追加的方式重定向到 filen >& file将输出文件 m 和 n 合并n <& file将输入文件 m 和 n 合并<< tag将开始标记 tag 和结束标记 tag 之间的内容作为输入
更多命令参考
http://www.runoob.com/linux/linux-command-manual.html
http://c.biancheng.net/cpp/shell/