1、set
查看set 幫助:shell
bash -c "help set"
選項:bash
- -e:任何命令執行失敗(非0 status)直接退出
- -x: 打印執行過程的命令行、參數
- +e:命令執行失敗不會中斷退出
- +x:不打印執行過程的命令行、參數
2、seq
seq: 打印數字序列命令行
用法:seq first [incr] lastcode
NAME
seq -- print sequences of numbers
SYNOPSIS
seq [-w] [-f format] [-s string] [-t string] [first [incr]] last
➜ blj seq 0 2
0
1
2
3、eval && exec
都是內建命令。orm
1.eval進程
- bashshell中內建的一個命令,命令後面所跟的內容都認爲是參數,可是會兩次掃描其參數:第一次掃描會將參數中的變量進行替換;第二次掃描會將後面的參數看成一個shell中的命令組合來執行命令。
- 實際使用中,能夠將任意組合的命令賦值給一個變量,而後在須要的位置經過 eval $variable 來執行這個命令。
- 常見用法:
- 直接組合命令 : eval ls -al
- 替換變量
- 能夠執行任何值爲命令組合的變量
- 變量替換賦值
2.execstring
- 也是shell內建的一個命令。相似 eval、source,不一樣的是exec執行後面的命令會替換當前shell進程,而前二者不會。
- 常見用法:
- 用於分離執行腳本,並退出子腳本的shell進程
- 用於設置描述符重定向輸入文件內容
- 用於設置描述符重定向輸出內容至文件
4、&&和 ||
- command1 && command2 [&& command3 ...]
- 左邊的命令返回真後,右邊的命令纔可以被執行
- 只要有一個命令返回假,後面的命令就不會被執行
- command1 || command2
- 只有左邊的命令返回假($? ==1),右邊的命令才能被執行,即實現短路邏輯或操做。
- 只要有一個命令返回真,後面的命令就不會被執行