Shell 的 echo 指令與 PHP 的 echo 指令相似,都是用於字符串的輸出。命令格式:echo stringshell
您能夠使用echo實現更復雜的輸出格式控制。bash
1.顯示普通字符串: echo "It is a test" ,這裏的雙引號徹底能夠省略,測試
如下命令與上面實例效果一致:echo It is a testspa
2.顯示轉義字符: echo "\"It is a test\"" , 結果將是:"It is a test" , 一樣,雙引號也能夠省略。code
備註: \" \": 轉移一對""符號。字符串
3.顯示變量:read 命令從標準輸入中讀取一行,並把輸入行的每一個字段的值指定給 shell 變量string
#!/bin/sh read name echo "$name It is a test" 以上代碼保存爲 test.sh,name 接收標準輸入的變量,結果將是: [root@www ~]# sh test.sh OK #標準輸入 OK It is a test #輸出
4.顯示換行:注意: echo -eit
echo -e "OK! \n" # -e 開啓轉義 echo "It it a test" 輸出結果: OK! -- 備註:(有一空行) It it a test
5.顯示不換行: 注意: echo -eclass
#!/bin/sh echo -e "OK! \c" # -e 開啓轉義 \c 不換行 echo "It is a test" 輸出結果: OK! It is a test
6.顯示結果定向至文件: echo "It is a test" > myfile; (第一次接觸這個操做)test
7.原樣輸出字符串,不進行轉義或取變量(用單引號):
echo '$name\"' 輸出結果: $name\"
8.顯示命令執行結果:
echo `date` 注意: 這裏使用的是反引號 `, 而不是單引號 '。 結果將顯示當前日期 2018年 3月11日 星期日 11時57分18秒 CST
備註1: echo輸出的字符串總結:
===================================================================
可否引用變量 | 可否引用轉移符 | 可否引用文本格式符(如:換行符、製表符)
單引號 | 否 | 否 | 否
雙引號 | 能 | 能 | 能
無引號 | 能 | 能 | 否
===================================================================
備註2.read命令相關:
read 命令一個一個詞組地接收輸入的參數,每一個詞組須要使用空格進行分隔;若是輸入的詞組個數大於須要的參數個數,則多出的詞組將被做爲總體爲最後一個參數接收。
測試文件 test.sh 代碼以下:
read firstStr secondStr echo "第一個參數:$firstStr; 第二個參數:$secondStr" 執行測試: $ sh test.sh 一 二 三 四 第一個參數:一; 第二個參數:二 三 四
實例, 文件 test.sh:
read -p "請輸入一段文字:" -n 6 -t 5 -s password echo "\npassword is $password"
參數說明:
$ sh test.sh 請輸入一段文字: password is asdfgh