私の設定ファイルは次のとおりです。
ver 3
file test1.conf ~/etc
file test2.conf ~/etc/conf
script tst.sh
私のスクリプトは、「file」というプレフィックスが付いたすべての行を繰り返し、ファイル名と場所の値を抽出し、いくつかの操作を実行したいと思います。これから私は以下を得ます:
files=$(cat file.conf | grep file)
しかし、各行から2番目と3番目の文字列を抽出するために繰り返しを実行する方法がわかりません。
答え1
POSIXシェルと同様に:
while read type name path; do
if [ "$type" = file ]; then
echo "$path/$name";
fi
done < your.conf
read
行を変数に分割し、最初の変数をテストしfile
、他の要素で実行したい操作を実行するために使用されます。awk
それは必要ありません。