国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Linux Shell > 正文

Shell腳本一次讀取文件中一行的2種寫法

2020-07-27 19:07:12
字體:
來源:轉載
供稿:網友

寫法一:

復制代碼 代碼如下:

#!/bin/bash
while read line
do
      echo $line     #這里可根據實際用途變化
done < urfile

寫法二:

復制代碼 代碼如下:

#!/bin/bash
cat urfile | while read line
do
    echo $line
done

注意:以上代碼中urfile 為被讀取的文件

Shell讀取文本文件

方法一:通過命令獲取所需內容,傳遞給變量

復制代碼 代碼如下:

var1=$(grep -i "^root" /etc/passwd | cut -d: -f 3 2>/dev/null)   <=讀取/etc/passwd文件中root的id

方法二:通過read命令讀取這個文件

復制代碼 代碼如下:

while read wOne wTwo wThree
do
    [ -z $wOne ] && continue           #測試此行內容是否為空
    xxx=$wOne                                 #提取內容
done < /var/xxx/one.txt
echo "$xxx"                                    #變量獲取了文件中的內容

以下方法無法提取內容;但可以輸出。問題似乎出在bash對管道的處理方法上
(bash可能生成了一個子shell處理管道輸出)。
復制代碼 代碼如下:

cat /var/xxx/one.txt | while read wOne wTwo wThree
do
    [ -z $wOne ] && continue           #測試此行內容是否為空
    xxx=$wOne                                 #提取內容
done
echo "$xxx"                                    #這里變量內容沒有改變

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 德钦县| 延长县| 仁寿县| 盐山县| 永仁县| 青神县| 栾川县| 望奎县| 安多县| 尚义县| 白城市| 稷山县| 沁阳市| 岑溪市| 湄潭县| 武定县| 沈阳市| 宁晋县| 民丰县| 云南省| 富民县| 新民市| 营山县| 钦州市| 平安县| 宝丰县| 桑植县| 台北县| 台前县| 万州区| 麻栗坡县| 鄂温| 盖州市| 呼图壁县| 红桥区| 阿拉尔市| 乃东县| 大荔县| 松江区| 平顶山市| 新疆|