Shellスクリプトファイルの1行を一度に読み込む2つの書き方
1297 ワード
書き方一:
書き方2:
注意:上記のコードのurfileは読み込まれたファイルです
Shellテキストファイルの読み込み
方法1:コマンドで必要なコンテンツを取得し、変数に渡す
方法2:readコマンドでこのファイルを読み込む
以下の方法ではコンテンツを抽出できません.しかし、出力できます.問題はbashのパイプの処理方法にあるようだ.
(bashはサブshell処理パイプ出力を生成する可能性があります).
#!/bin/bash
while read line
do
echo $line #
done < urfile
書き方2:
#!/bin/bash
cat urfile | while read line
do
echo $line
done
注意:上記のコードのurfileは読み込まれたファイルです
Shellテキストファイルの読み込み
方法1:コマンドで必要なコンテンツを取得し、変数に渡す
var1=$(grep -i "^root" /etc/passwd | cut -d: -f 3 2>/dev/null) <= /etc/passwd root id
方法2: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" #