Linux中國

如何將 Linux 命令的輸出賦值給變數

可以使用如下形式的 shell 命令置換特性,將命令的輸出存儲到變數中:

變數名=$(命令)
變數名=$(命令 [命令選項 ...] 參數1 參數2 ...)
或者:
變數名=`命令`
變數名=`命令 [命令選項 ...] 參數1 參數2 ...`

以下是使用命令置換特性的示例:

本例,我們將 who (顯示當前登錄系統的用戶) 的輸出值存儲到 CURRENT_USERS 變數中:

$ CURRENT_USERS=$(who)

然後,我們可以使用 echo 命令 顯示一個句子並使用上述變數,如下:

$ echo -e "以下為登錄到系統中的用戶:nn $CURRENT_USERS"

上面的命令中:-e 標記表示解釋所有的轉義序列 (如 n 為換行)。為節約時間和內存,通常在 echo 命令 中直接使用命令置換特性,如下:

$ echo -e "以下為登錄到系統中的用戶:nn $(who)"

顯示當前登錄系統的用戶

在 Linux 中顯示當前登錄系統的用戶

接下來,為了演示上面提到的第二種形式,我們以把當前工作目錄下文件數存儲到變數 FILES ,然後使用 echo 來輸出,如下:

$ FILES=`sudo find . -type f -print | wc -l`
$ echo "當前目錄有 $FILES 個文件。"

顯示目中包含文件的數量

顯示目中包含文件的數量

就是這些了。我們展示了將 shell 命令的輸出賦值給變數的方法。你可以在下邊的評論反饋區留下你的想法。

作者簡介:

Aaron Kili 是一名 Linux 和 F.O.S.S 忠實擁護者、未來的 Linux 系統管理員、Web 開發者,目前是 TecMint 的原創作者,熱衷於計算機並樂於知識分享。

譯者簡介:

GHLandy —— 欲得之,則為之奮鬥。 If you want it, work for it.

作者:Aaron Kili 譯者:GHLandy 校對:jasminepeng

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國