"rtcpOnNbActive true"
変数に文字列が格納されていますx
。 「true」を部分文字列として抽出して変数に保存したいと思います。どうすればいいですか?
答え1
次の方法を試してください。
y=$(echo $x | awk '{print $2}')
echo $y
echo $x
表示された値x
。awk '{print $2}'
以前に表示された2番目のフィールドを印刷しますx
。$(
...)
出力を維持してに割り当てますy
。
答え2
抽出するサブストリングの前に少なくとも1つのスペースがあり、サブストリングにスペースが含まれていないと仮定すると、単純なパラメーター拡張を使用してこれを実行できます。
x="rtcpOnNbActive true"
y="${x##* }"
echo "[$y]"
出力
[true]
答え3
bash配列を使用してこれを行うことができます。str
角かっこを中に入れるだけです。たとえば、
arr=("first second third")
echo ${arr[1]}
str="first second third"
arr1=($str)
echo ${arr1[1]}
答え4
read
内蔵のものを使用できます。
read -r _ y <<<"$x"
printf "%s\n" "$y"
true