shell内置命令

影响shell程序的内置命令

:

true

false

exit

break

continue

shift

......

shift 使位置参数向左移动,默认移动1位,可以使用shift 2

如果希望处理完一个参数让他消失,例如本来有3个参数,处理完一个后踢出去一个,就剩2个,可以使用shift命令来实现

exit 退出整个程序

break 结束当前循环,或跳出本层循环

break 1表示跳出一层循环,break 2表示跳出二层循环

continue 忽略本次循环剩余的代码,直接进行下一次循环,可以这么理解,continue只是跳出某一次循环,而break是从本次循环开始终止后面的循环

continue 1 表示跳出一层循环

continue 2 表示跳出二层循环

break和continue只能应用于循环中

1.continue和break的区别

#!/bin/bash
for i in {A..D}
do
echo -n $i
for j in {1..9}
do
if [ $j -eq 5 ];then
continue
fi
echo -n $j
done
echo
done
输出:
[root@localhost d08_shell_nzml]# ./continue_break059.sh
A12346789
B12346789
C12346789
D12346789

----------------------------------------------------------------------------------------
#!/bin/bash
for i in {A..D}
do
echo -n $i
for j in {1..9}
do
if [ $j -eq 5 ];then
break
fi
echo -n $j
done
echo
done
输出:
[root@localhost d08_shell_nzml]# ./continue_break059.sh
A1234
B1234
C1234
D1234

2.shift使位置参数移位

#!/bin/bash
#------------------使用shift移位------------------
while [ $# -ne 0 ]
do
useradd $1
echo "$1 is created....."
shift
done

执行:./shift jiang01 jiang02 jiang03
解析:使用shift后,当jiang01位置参数执行完后就会踢出去,然后位置参数个数就剩2个,当jiang02 jiang03分别执行完被踢出去后循环结束