总结Linux中的shell命令
1、基本语法
使用vi编辑器新建一个文件 hello.sh
1 2
| #!/bin/bash echo "Hello world!"
|
执行方式
sh hello.sh
chmod +x ./hello.sh # 使脚本具有执行权限
./hello.sh # 执行脚本
1 2 3 4 5 6 7 8 9
| ## 3、变量
### 局部变量
```shell #!/bin/bash str="hello" echo ${str}world # helloworld
|
环境变量
若想查看所有的环境变量,使用命令:env
编辑环境变量,在/etc/profile 中,通过 export 关键字。
1
| export MYENV=/root/myenv
|
4、特殊字符
符号 |
含义 |
$# |
传递到将本的参数个数 |
$* |
以一个但字符串显示所有向脚本传递的参数 |
$$ |
脚本运行的当前进程ID号 |
$! |
后台运行的最后一个进程的ID号 |
$@ |
与$*相同,但是使用时加引号,并在引号中返回每个参数 |
$? |
显示最后命令的退出状态,0表示没有错误,其他任何值表示有错误 |
1 2 3 4
| #!/bin/bash echo "第一个参数为: $1" echo "参数个数为:$#" echo "传递的参数作为一个字符串显示:$*"
|
执行:./test.sh 1 2 3
5、运算符
以加法 + 为例。
1 2 3 4 5 6
| #! /bin/bash a=1; b=2; echo `expr $a + $b`; echo $((a+b)); echo $[a+b];
|
6、if语句
1 2 3 4 5 6 7 8 9 10 11
| #!/bin/bash read -p "Please input your name:" NAME # read命令用于从控制台读取输入的数据,然后存入NAME变量 if [ $NAME = root ] then echo "hello ${NAME}" elif [ $NAME = dongao ] then echo "hello ${NAME}" else echo "Get out" fi
|
7、for语句
方式1:
1 2 3 4 5
| #!/bin/bash for N in 1 2 3 do echo $N done
|
方式2:
1 2 3 4 5
| #!/bin/bash for ((i = 0; i <= 5; i++)) do echo "$i" done
|
8、函数
1 2 3 4 5 6 7 8 9 10
| #!/bin/bash funWithReturn(){ echo "输入第一个字" read aNum echo "输入第二个字" read bNum return $(($aNum+$bNum)) } funWithReturn # 调用函数 echo "输入的两个数字之和为 $? " # $? 提取上一个返回值
|