次のようにPOSIX入力をどのように読みますかbash
?
<name>,<tag1> <tag2> <tag3>…
試してみましたが、
while read line;do done
改行が必要で、私が持っているのは空白だけです。
(はいIFS解決策?それではどうですか? (IFSを完全に理解していません。)
答え1
配列を使用して下さい:
echo '<name>,<tag1> <tag2> <tag3>' | while IFS=" ," read -a foo; do echo ${foo[@]}; done
出力:
<name> <tag1> <tag2> <tag3>
からman bash
:
IFS:拡張後の単語分割と読み込み組み込みコマンドを使用して行を単語に分割するために使用される内部フィールド区切り文字。