あなたはまた、使用することができ
$ echo "$txt"
1, servername, url, Properties, hostname, version, os, application server
ただコンマに適切にフィールドセパレータを設定しますあなたの文字列にバックスラッシュ(\)以外のASCII 0x20-0x7f
の文字しか含まれていない場合は、bash組み込み関数0x5c
(シェル変数を扱うについてStéphane Chazelas言及警告に注意):
s='1, servername, url, Properties, hostname, version, os, application server'
IFS=', ' read _ server _ <<<"$s"
echo "'$server'"
出力:
'servername'
や位置パラメータを用いて:
oIFS="$IFS"
export IFS=', '
set -- $s
echo $2
IFS="$oIFS"
または:
function getserver() (
export IFS=', '; set -- $1; echo $2
)
getserver "1, servername, url, Properties, hostname, version, os, application server"
出力:
servername
コンマ 'のawk -Fにフィールド区切りに変更し、「あなたの例では、行全体を印刷した場合はawkが壊れているとして、あなたははるかに大きな問題を持っている – 123
をyadayada''。あなたの入力例は '1'(引用符なし)と表示されるはずです。私は提供されたソリューションのいずれかを見る前にそれを再インストールすることをお勧めします – grail