SHELL训练营--day6__shell脚本(2)

case判断

case语句为多选择语句。
格式如下:
case 值 in
模式1)
command1
;;
模式2)
command1
;;
esac
取值后面必须为单词in,每一模式必须以右括号结束。取值可以为变量或常数。
匹配发现取值符合某一模式后,其间所有命令开始执行直至 ;;。
取值检测匹配的每一个模式。一旦模式匹配,则执行完匹配模式相应命令后不继续其他模式。
如果没有合适的匹配模式,需用星号 * 捕获该值,再执行后面的命令。

for 循环

for循环一般用于 从 字符串中按 空格或换行符 分隔出来的对像,进行迭代 处理。
格式 如下:

    for var in item1 item2 ... itemN
    do
         command
    done

单行格式:for var in item1 item2 ... itemN; do command1; command2… done;
for也可用 for (( ; ; )) 作为条件。 双括号
列举一些常用示例:
1、 for((i=1;i<=10;i++));do echo $(expr $i * 4);done
2、在shell中常用的是 for i in $(seq 10)
3、for i in ls
4、for i in ${arr[@]}
5、for i in $ ; do
6、for File in /proc/sys/net/ipv4/conf/
/accept_redirects; do
7、for i in f1 f2 f3 ;do
8、for i in .txt
9、for i in $(ls
.txt)
for in语句与`和$( )合用,利用 `或$( )的将多行合为一行的缺陷,实际是合为一个字符串数组
10、LIST="rootfs usr data data2"
for d in $LIST; do
用for in语句自动对字符串按空格遍历的特性,对多个目录遍历
11、for i in {1..10}
12、for i in stringchar {1..10}

猜你喜欢

转载自blog.51cto.com/sincethen/2335275