Linux SHELL指令碼中的反引號

2021-10-05 12:42:43 字數 1028 閱讀 5775

linux_shell指令碼中的反引號(`)

用反引號,將shell命令引起來,可以將命令的輸出值賦給變數

比如這裡,date命令輸出具體的時間

[root@localhost ~]$ date

mon apr 27 16:07:01 cst 2020

那麼我用反引號將命令完整的引起來,賦值給變數today,那我們可以輸出這個變數,若無再次賦值,那這個變數值是不會改變的。

[root@localhost ~]$ today=

`date

`[root@localhost ~]$ echo

$today

mon apr 27 16:13:36 cst 2020

[root@localhost ~]$ echo

$today

mon apr 27 16:13:36 cst 2020

要輸出某個命令的結果值,直接$美元符引用其實也可以了,是一樣的效果

[root@localhost ~]$ echo

$(date

)mon apr 27 16:20:45 cst 2020

[root@localhost ~]$ today =

$(date

)[root@localhost ~]$ echo

$today

mon apr 27 16:20:59 cst 2020

[root@localhost ~]$ echo

$today

mon apr 27 16:20:59 cst 2020

$() 與 反引號 `` 其實效果是一樣的

在操作上,這兩者都是達到相應的效果,但是建議使用$(),理由如下:

1、``反引號容易與雙引號弄混,

2、$()更直觀

但$()不是所有類在unix系統都支援這種方式,但反引號是肯定支援的。

Linux shell指令碼(編輯中)

shell是乙個程式,是使用者和linux核心溝通的橋梁 bin bash 其中 不是注釋,而是告訴作業系統將執行此指令碼所用的直譯器的名字。syntax on set hlsearch set tabstop 4 set autoindent 可以去掉冒號,新增到 vimrc中 bin bash ...

Linux shell指令碼中shift的用法說明

原文 shift命令用於對引數的移動 左移 通常用於在不知道傳入引數個數的情況下依次遍歷每個引數然後進行相應處理 常見於linux中各種程式的啟動指令碼 示例1 依次讀取輸入的引數並列印引數個數 run.sh bin bash while 0 do echo 第乙個引數為 1,引數個數為 shift...

Linux shell指令碼中if判斷的條件

基本上和其他指令碼語言一樣。沒有太大區別。不過值得注意的是。裡面的條件判斷。1.字串判斷str1 str2 當兩個串有相同內容 長度時為真 str1 str2 當串str1和str2不等時為真 n str1 當串的長度大於0時為真 串非空 z str1 當串的長度為0時為真 空串 str1 當串st...