我有一个字符串"rtcpOnNbActive true"
存储在变量中x
。我想提取“true”作为子字符串并存储在变量中。我怎样才能做到这一点?
答案1
试试这个方法:
y=$(echo $x | awk '{print $2}')
echo $y
echo $x
显示 的值x
。awk '{print $2}'
打印先前显示的第二个字段x
。$(
...)
保留输出并将其分配给y
。
答案2
假设您要提取的子字符串之前至少有一个空格(并且子字符串不包含任何空格),您可以通过简单的参数扩展来完成此操作:
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