1.相當於true
2.佔位符,類似於python中的pass
3.適用於 while -->
while :
do 迴圈體
done
適用於 while -->
while true
do 迴圈體
done
適用於 util -->
until false
do 迴圈體
done
exit 用於退出整個程式
結束當前迴圈,或跳出本層迴圈
示例
[root@hadoop04 shell_inner_command]# vim command_break_continue.sh
#!/bin/bash
for i in
do echo -n $i
for j in `seq 9`
doif [ $j -eq 5 ];then
# 跳出迴圈
# break 數字 --> 跳出幾層迴圈
break 1
fiecho -n $j
done
echo
done
[root@hadoop04 shell_inner_command]# bash command_break_continue.sh
a1234
b1234
c1234
d1234
忽略本次迴圈剩餘的**,直接進行下一次迴圈
示例
[root@hadoop04 shell_inner_command]# vim command_break_continue.sh
#!/bin/bash
for i in
do echo -n $i
for j in `seq 9`
doif [ $j -eq 5 ];then
# 跳過迴圈
# continue 數字 --> 跳過幾層迴圈
continue
fiecho -n $j
done
echo
done
[root@hadoop04 shell_inner_command]# bash command_break_continue.sh
a12346789
b12346789
c12346789
d12346789
使位置引數向左移動,預設移動 1 位,可以使用 shift 2
示例
將傳入的引數進行累加(注:引數個數不確定)
# 方法1:for迴圈的實現方式
[root@hadoop04 shell_inner_command]# vim command_shift01.sh
#!/bin/bash
for i
do let sum+=$i
done
echo $
[root@hadoop04 shell_inner_command]# bash command_shift01.sh 1 4 5 6
sum:16
# 方法2:shift的實現方式
[root@hadoop04 shell_inner_command]# vim command_shift02.sh
#!/bin/bash
while [ $# -ne 0 ]
do let sum+=$1
shift
done
echo $
[root@hadoop04 shell_inner_command]# bash command_shift.sh 1 4 5 6
sum:16
使用傳入的使用者名稱進行建立使用者(注:使用者名稱個數不確定)
[root@hadoop04 shell_inner_command]# vim command_shift_create_user.sh
#!/bin/bash
while [ $# -ne 0 ]
do useradd $1 && echo "$1 is created."
shift 1
done
[root@hadoop04 shell_inner_command]# bash command_shift.sh ken alice jeve
ken is created.
alice is created.
jeve is created.
09 shell指令碼 002 和
1.重定向 資料輸入 鍵盤 標準輸入,但是並不是唯一方式 stdin echo 123456 passwd stdin username 例如 useradd.sh user.txt 資料輸出 顯示器 標準輸出,但是並不是唯一方式 ls etc a.txt fd 檔案識別符號 0 9 0 1 2 0...
09 shell 單引號和雙引號
和c語言不一樣,shell指令碼中的單引號和雙引號一樣都是字串的界定符,而不是字元的界定符。單引號用於保持引號內所有字元的字面值,即使引號內的 和回車也不例外,但是字串中不能出現單引號。如果引號沒有配對就輸入回車,shell會給出續行提示符,要求使用者把引號配上對。例如 itcast echo sh...
shell內建命令
知識點1 什麼是shell內建命令?shell內建命令,就是由 bash 自身提供的命令,而不是檔案系統中的某個可執行檔案。內建命令與普通命令的性質是不一樣的,內建命令並不是某個外部檔案,只要在shell中就一定可以執行這個命令。知識點2 怎麼確定乙個命令是否是內建命令?使用type可以區分,例如c...