Shell 编程一般指编写 shell 脚本。
1:基本语法:
使用 vi 编辑器新建一个文件 hello.sh
1 2 | #!/bin/bash echo "Hello World !" |
执行方式:
方式1:
sh hello.sh
方式2
chmod +x ./hello.sh #使脚本具有执行权限
./hello.sh #执行脚本
2:变量:
局部变量
1 2 3 | #!/bin/bash str= "hello" echo ${str}world |
环境变量
echo $PATH
echo $HOME
3:特殊字符
1 2 3 4 5 6 | $# 传递到脚本的参数个数 $* 以一个单字符串显示所有向脚本传递的参数。 $$ 脚本运行的当前进程 ID 号 $! 后台运行的最后一个进程的 ID 号 $@ 与$*相同,但是使用时加引号,并在引号中返回每个参数。 $? 显示最后命令的退出状态。 0 表示没有错误,其他任何值表明有错误。 |
#!/bin/bash
echo "第一个参数为: $1";
echo "参数个数为: $#";
echo "传递的参数作为一个字符串显示: $*";
4: 运算符
1 2 3 4 5 | #!/bin/bash a=1; b=2; echo `expr $a + $b`; echo $((a+b)); echo $[a+b]; |
5 : if语句
1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash read -p "please input your name:" NAME ## read命令用于从控制台读取输入数据 ## printf '%s\n' $NAME if [ $NAME = root ] then echo "hello ${NAME}, welcome !" elif [ $NAME = itcast ] then echo "hello ${NAME}, welcome !" else echo "Get out Please!" fi |
6: for语句
方式一:
1 2 3 4 5 | #!/bin/bash for N in 1 2 3 do echo $N done |
方式二:
1 2 3 4 5 | #!/bin/bash for ((i = 0; i <= 5; i++)) do echo "welcome $i times" done |
7: 函数
1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash funWithReturn(){ echo "这个函数会对输入的两个数字进行相加运算..." echo "输入第一个数字: " read aNum echo "输入第二个数字: " read anotherNum echo "两个数字分别为 $aNum 和 $anotherNum !" return $(($aNum+$anotherNum)) } funWithReturn echo "输入的两个数字之和为 $? !" |