Bash Shell Script – eval
測試環境為 CentOS8 (虛擬機) 在 Linux shell 會將變數轉換成字串,缺點是當變數是指令時,也只會當作字串. 這時候透過 eval 指令就可以先將後面 的參數替換成字串,再把全部當作指令到 Shell 來執行. eval 格式:
測試環境為 CentOS8 (虛擬機) 在 Linux shell 會將變數轉換成字串,缺點是當變數是指令時,也只會當作字串. 這時候透過 eval 指令就可以先將後面 的參數替換成字串,再把全部當作指令到 Shell 來執行. eval 格式:
除了使用文字編輯器改變 TEXT (.txt) 文字檔案內容外,我們可以透過 sed 指令來處理. 先來產生一個文字檔. 透過 sed 的 s/regexp/replacement/ , 符合 regexp (正規表示式) 的字串會取代 replacement 字串,但同一行有多個符合 regexp […]
測試環境為 CentOS7 x86_64 (虛擬機) 參考文章 – https://ryanstutorials.net/bash-scripting-tutorial/bash-functions.php Linux Bash shell script 使用函數 function 參考 […]
透過 sed 與 awk 都可以把文件做過濾和轉換成新的輸出內容.不過 sed 適合用於一整行的資料處理,而 awk 則比較適合將一整行做多個 欄位 的資料處理.先來看看 sed 的範例. 只想把 ifconfig 網卡裝置 ens33 過濾剩下 IP Address 的輸出,這時候需要配合 gre […]
tr – (translate or delete characters ) 這個指令可以用來做字元的取代或是刪除.tr 只能針對字元來處理,如果要對字串做處理的話,必須使用 sed 來處理, 請參考 https://benjr.tw/97129 下面是他常用的參數. -d, ̵ […]
透過 sed 與 awk 都可以把文件做過濾和轉換成新的輸出內容.不過 sed – https://benjr.tw/97129 適合用於一整行的資料處理,而 awk 則比較適合將一整行做多個 欄位(Field) 的資料處理.先來看看 awk 的幾個範例. awk 是 mawk 的連結, […]
while 迴圈的使用有好幾種方式,先來看第一種 while [ condition ] 語法如下 先來看一個無限迴圈的範例. 執行結果 除非按下 ^c (Ctrl+C) 之外,會無限的輸出 Hi 字串. 另外一個範例: 程式說明: 變數 i 設定為 1 ,需在 while 前宣告. 條件式 $i […]
在 Shell Script Bash $開頭的是變數, $? 這個是有特殊的變數. 當執行指令時都會回傳一個執行後的代碼給變數 $?,成功的執行完指令後會回傳一個 0 值(有錯誤時會回傳 錯誤代碼). 利用 ping 的指令來看看 變數 $? 的變化. ping 參數 一個封包 (-c 1) , […]
參考文章 – https://devhints.io/bash#loops for 迴圈的使用有好幾種方式,先來看第一種 for var in list 語法如下 直接來看下面的範例,定義了一個變數 testlist 字串,內容為 test1 test2 ,接下來的 for 的變數 te […]
使用 Linux 指令時,輸出太多時會不方便閱讀,這時可以透過 資料導向 這個功能. 標準輸出 (stdout) Linux 下版標準輸出是顯示器,我們可以利用 > 或 >> 將標準輸出 (stdout) 做導向,下面的例子將執行結果導向到檔案. 標準輸出 (stdout) 的代碼為 1,所以有時你 […]