bash如何讀文本並保存到變量
對於‘讀文本並保存到變量’這一問題,bash提供了很多辦法。
假設有文件名爲file1,內容爲:
line 1
line 2
line 3
1.利用管道將cat的輸出轉化爲read的輸入
LINE="test"
cat file1 | while read LINE; do
echo "son: ${LINE}"
done;
echo "father: ${LINE}"
缺點:使用管道的辦法使得LINE變量只能在子進程裏保存,無法在之後使用
2.使用文件句柄
exec 10<>file1
while read -u 10 LINE; do
echo "while: ${LINE}"
done
echo "out: ${LINE}"
10<&-
使用文件句柄不受這個限制,不過語法有點變態
3.重定向
read LINE < file1
echo "line: ${LINE}"
4.命令代替
LINE=`cat file1`
echo "${LINE}"
bash如何讀文本並保存到變量
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
linux gcc 編譯錯誤小問題 備忘(持續更新)
ppipp1217
2020-07-08 05:01:22
Linux編程基礎:read/write函數以及(非)阻塞I/O的概念
Mr_weng_
2020-07-07 09:51:27
Linux編程基礎:C標準IO庫函數與Unbuffered IO函數
Mr_weng_
2020-07-07 09:51:26
UTF-8格式的latex文檔轉pdf書籤亂碼
吴遥
2020-07-05 22:18:17
sawfish配置文件
吴遥
2020-07-05 22:18:16
GNU binutils使用小結(轉)
吴遥
2020-07-05 22:18:16
Linux內核驅動加載過程
yanlinembed
2020-07-05 11:06:23
Linux 內核啓動過程
yanlinembed
2020-07-05 11:06:23
編譯60個小程序之makefile
公司有個任務需要編譯60個c語言小程序,工程目錄結構爲: src:放所有小程序源文件.c drv:所有小程序編譯後都爲對應.drv 其它頭文件、庫目錄省略。 makefile不太熟,也很菜,我第一想法
lkness
2020-07-05 10:58:50
Linux daemon守護進程的創建
lkness
2020-07-05 10:58:50
Linux網絡編程之I/O複用
hejiajie1989
2020-07-05 10:53:23
linux mount函數nfs掛載
王log
2020-07-04 18:24:23
linux exec函數執行之前設置當前進程所有描述符FD_CLOEXEC
王log
2020-07-04 18:24:23
CentOS 下配置Django項目運行環境
江枫戏渔火
2020-07-04 02:08:27