Linux學習-08-學習BASH

來源:互聯網
上載者:User

標籤:linux學習

『 \[Enter] 』 跳脫


變數的取用: echo

echo $HOME

myname=VBird

echo $myname


變數的設定規則

1,變數與變數內容以=來串連myname=VBird

2,等號兩邊不能有空格

3,變數名稱只能是英文字母和數字,但不能數字開頭

4,變數內容有空格用" 或 ‘將變數內容結合起來,但,

雙引號內的特殊字元如 $ 等,可以保有原本的特性,如下所示: 

『var="lang is $LANG"』則『echo $var』可得『lang is en_US』

單引號內的特殊字元則僅為一般字元 (純文字),如下所示: 

『var=‘lang is $LANG‘』則『echo $var』可得『lang is $LANG』

5. 可用跳脫字元『 \ 』將特殊符號(如 [Enter], $, \, 空格符, ‘等)變成一般字元;

6. 在一串指令中,還需要藉由其他的指令提供的資訊,可以使用反單引號『`指令`』或 『$(指令)』。

特別注意,那個`是鍵盤上方的數字鍵1左邊那個按鍵,而不是單引號!例如想要取得核心版本的設定:

 『version=$(uname -r)』再『echo $version』可得『2.6.18-128.el5』

7. 若該變數為擴增變數內容時,則可用 "$發量名稱" 戒 ${發量} 累加內容,如下所示: 『PATH="$PATH":/home/bin』

8. 若該變數需要在其他子程式執行,則需要以 export 來使變數變成環境變數: 『export PATH』

9. 通常大寫字元為系統預設變數,自行設定變數可以使用小寫字元,方便判斷 (純粹依照使用者興趣與嗜好) ;

10.取消變數的方法為使用 unset :『unset 發量名稱』

例如取消 myname 的設定: 『unset myname』



read

要讀取來自鍵盤輸入的變數

read atest 

This is a test <==此時游標會等待你輸入!請輸入左側文字看看

[[email protected] ~]# echo $atest 

This is a test <==你剛剛輸入的

[[email protected] ~]# read -p "Please keyin your name: " -t 30 named

Please keyin your name: VBird Tsai <==注意看,會有提示字元喔! 

[[email protected] ~]# echo $named VBird Tsai


ulimit 『限制使用者的某些系統資源』

變數內容的刪除取代與替換

別名設定alias,unalias

資料流重導向

1. 標準輸入 (stdin) :代碼為 0 ,使用 < 或 << ;

2. 標準輸出 (stdout):代碼為 1 ,使用 > 或 >> ;

3. 標準錯誤輸出(stderr):代碼為 2 ,使用 2> 或 2>> ;

將 stdout 不 stderr 分別存到不同的檔案去 

[[email protected] ~]$ find /home -name .bashrc > list_right 2> list_error

/dev/null 垃圾桶

同時寫入 find /home -name .bashrc > list 2>&1

命令執行的判斷依據: ; , &&, ||

cmd ; cmd (不考慮命令相關性的連續指令下達)

cmd1 && cmd2 

1. 若 cmd1 執行完畢且正確執行($?=0),則開始執行 cmd2。 

2. 若 cmd1 執行完畢且為錯諢 ($?≠0),則 cmd2 不執行。

cmd1 || cmd2

1. 若 cmd1 執行完畢且正確執行($?=0),則 cmd2 不執行。 

2. 若 cmd1 執行完畢且為錯諢 ($?≠0),則開始執行 cmd2。

我不清楚 /tmp/abc 是否存在,但就是要建立 /tmp/abc/hehe 檔案 

[[email protected] ~]# ls /tmp/abc || mkdir /tmp/abc && touch /tmp/abc/hehe


管線命令『 | 』


Linux學習-08-學習BASH

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.