shell命令的替換

2021-10-02 17:57:39 字數 908 閱讀 2758

shell 命令替換是指將命令的輸出結果賦值給某個變數。比如,在某個目錄中輸入 ls 命令可檢視當前目錄中所有的檔案。

shell 中有兩種方式可以完成命令替換,一種是反引號,一種是$(),使用方法如下:

variable=

`commands`

variable=

$(commands)

其中,variable 是變數名,commands 是要執行的命令。commands 可以只有乙個命令,也可以有多個命令,多個命令之間以分號;分隔。

例如,date 命令用來獲得當前的系統時間,使用命令替換可以將它的結果賦值給乙個變數。

使用 data 命令的%s格式控制符可以得到當前的 unix 時間戳,這樣就可以直接計算指令碼的執行時間了。unix 時間戳是指從 1970 年 1 月 1 日 00:00:00 到目前為止的秒數.

執行指令碼,5s秒後可以看到輸出結果:

注意,如果被替換的命令的輸出內容包括多行(也即有換行符),或者含有多個連續的空白符,那麼在輸出變數時應該將變數用雙引號包圍,否則系統會使用預設的空白符來填充,這會導致換行無效,以及連續的空白符被壓縮成乙個。請看下面的**:

shell中的命令替換和變數替換

可以用 command 也可以用 command 二者是有區別的,先看一下 command 注意 這裡不是引號,而反引號 下面這個是 command 變數替換可以根據變數的狀態 是否為空 是否定義等 來改變它的值,可以使用的變數替換形式 形式說明 變數本來的值 如果變數 var 為空或已被刪除 un...

shell的命令替換和命令組合

bash shell系列文章 linux中使用反引號 在波浪線的按鍵上 或者 來執行命令替換。使用括號 來組合一系列命令。root xuexi echo what date it is?date f what date it is?2016 09 25 root xuexi tmp echo wha...

shell變數的替換,命令的替換,轉義字元

1,shell變數的替換 變數可以根據變數是否為空或者被刪除,而被替換為特定的值 變數本來的值 var word 如果變數為空,或者已被刪除那麼返回word,但是不改變var的值 name xiaoming echo xiaoming s age is ech age xiaoming s age ...