Bashでは、変数が保持する文字列のN番目の単語を取得したいと思います。
例えば:
STRING="one two three four"
N=3
結果:
"three"
どのBashコマンド/スクリプトがこれを行うことができますか?
回答:
echo $STRING | cut -d " " -f $N
代替案
N=3
STRING="one two three four"
arr=($STRING)
echo ${arr[N-1]}
IFS
(内部フィールド区切り文字)を空白ではなく「:」などに設定した場合は、これを試す前に元に戻してください。
いくつかのステートメントを含むファイル:
cat test.txt
結果:
This is the 1st Statement
This is the 2nd Statement
This is the 3rd Statement
This is the 4th Statement
This is the 5th Statement
したがって、このステートメントタイプの4番目の単語を出力するには:
cat test.txt |awk '{print $4}'
出力:
1st
2nd
3rd
4th
5th
STRING=(one two three four)
echo "${STRING[n]}"