【Shell】標準輸入 read 和輸出 echo
阿新 • • 發佈:2019-01-01
文章目錄
一、標準輸入 read
shell 中通過 read 語句從鍵盤或檔案的某一行文字中讀入資訊,並將內容賦給變數,多個變數之間用空格分隔。
read 變數1 變數2 ...
read 每次只能讀取一行資料。
- 把一行內容全部賦值給一個變數,並直接通過 echo 輸出。
$ read name jjing $ echo $name jjing $ read name jjing jj $ echo $name jjing jj
- 一次賦值多個變數,多個值用空格分隔。
$ read name1 name2
jjing tao
$ echo $name1
jjing
$ echo $name2
tao
- 賦值多個變數時,當值多於變數名時,最後多餘的內容全部賦值給最後一個變數。
$ read name1 name2
jjing tao yayaa
$ echo $name1
jjing
$ echo $name2
tao yayaa
二、標準輸出 echo
使用 echo
命令可以輸出文字字串、變數、表示式、命令等。
直接在 echo 後面加上要輸出的內容即可。
命令 | 輸出內容 | 說明 |
---|---|---|
echo “abcd1234” | abcd1234 | 輸出一個普通字串,預設在結尾包含換行符,游標定位在下一行開頭。 |
echo -e “my name is :\c” | my name is : | \c 表示不換行,輸出字串後游標定位在字串末尾。(在 Linux 中要加上 -e 引數才能生效) |
echo -e “1\n2\n3\n4\n” | 輸出多行,每個數字為一行 | \n -e 引數才能生效) |
a=1 echo “$a” | 輸出變數,使用 $ 引用變數名即可 | 引用變數時,可以不加雙引號,但是不能用單引號。 |
echo "\“13242\”" echo ‘“13242”’ |
“13242” | 輸出特殊字元時要轉義,也可以在最外層使用單引號則不用轉義。 |
echo “`date`” | 2018年 12月 20日 星期四 09:08:25 CST | 輸出命令 date 的返回值。 |
說明:
- 輸出內容可以帶引號,也可以不帶,但是為了書寫規範及減少錯誤,最好統一帶雙引號。
\c
–不換行,\n
–換行,使用時前面要加上-e
引數。- 輸出變數時,直接用 $ 加上變數名即可。
- 輸出特殊字元時,要使用
\
轉義,或者在最外層加上單引號,可以原文輸出為字串。 - 輸出命令時,注意命令外面的特殊引號。