7
A
回答
12
随着sed
:
var=$(echo -e "AAA\nBBB" | sed -n '2p')
随着awk
:
var=$(echo -e "AAA\nBBB" | awk 'NR==2')
然后简单,回声你的变量:
echo "$var"
0
像这样:
var=$(echo -e 'AAA\nBBB' | sed -n 2p)
echo $var
BBB
1
您可以通过管道头/尾的输出做到这一点 - var=$(cmd | tail -n +2 | head -n 1)
4
呼叫read
两次:
echo -e "AAA\nBBB" | { read line1 ; read line2 ; echo "$line2" ; }
请注意,您所需要的{}
所以确保两个命令都获得相同的输入流。此外,该变量不是{}
外部访问,因此这并没有工作:
echo -e "AAA\nBBB" | { read line1 ; read line2 ; } ; echo "$line2"
2
您可以使用sed
:
SecondLine=$(Your_command |sed -n 2p)
例如:
echo -e "AAA\nBBBB" | sed -n 2p
你根据要打印的行更改编号。
0
在bash脚本: 变量= echo "AAA\nBBB" | awk "NR==2"
1
使用的阵列与参数扩展,以避免子shell:
str="AAA\nBBB"
arr=(${str//\\n/ })
var="${arr[1]}"
echo -e "$str"
+0
+1用于提示强大的内置功能。 '/'和'}'之间的空间是否真的有必要? –
+1
是的,没有空间的子字符串没有有效的替代来定义单独的数组元素。 – koola
相关问题
- 1. Bash - 如何将命令的输出写入变量并获取命令pid
- 2. 如何将Bash命令的输出分配给变量?
- 3. 如何将bash命令的输出放到Python变量中?
- 4. 如何将bash命令的输出存储在变量中?
- 5. bash读取循环只读取输入变量的第一行
- 6. Bash Script_将从读命令读取的变量插入到命令中
- 7. 如何把命令的输出在bash变量
- 8. 如何获得bash命令的输出变量
- 9. 如何将用户输入读入Bash中的变量?
- 10. 仅写入第二个命令行参数的输出
- 11. 来自命令输出和变量的行数不同,wc,bash
- 12. 如何运行命令,使用bash获取输出和输入命令
- 13. 如何将命令输出的部分(在某个字符之后)读入bash变量?
- 14. 在cshell中:如何将变量设置为命令行输出?
- 15. 如何将我的bash命令的变量值输入到MySQL中?
- 16. 如何阅读命令行输出
- 17. 显示Bash命令的输出并将输出保留在变量中
- 18. 将命令输出转换为bash中的变量和修剪变量?
- 19. 需要第二行输出wmic得到最后修改命令输入变量而不写入文件
- 20. 如何存储bash命令的输出?
- 21. 阅读命令行输出
- 22. 将命令输出保存到变量
- 23. 将命令输出分配给变量
- 24. 将命令输出到变量
- 25. Bash - 如何把命令中的变量?
- 26. 如何输入第二行
- 27. Bash的“读取”变量的伪输入
- 28. 如何将包含要输出的变量的命令重定向到Windows命令行上的变量
- 29. 如何通过ssh在bash中将命令输出保存到变量中
- 30. 输入命令后在命令行中读取awk中的变量
为了获得可变的块之外存在,则使用不涉及的配管的方法:[进程替换](HTTP:// WWW .gnu.org/software/bash/manual/bashref.html#Process-Substitution)'{read line1;读第2行; } <<(command)'或者[here-string](http://www.gnu.org/software/bash/manual/bashref.html#Here-Strings)'output = $(command); {读取line1;读第2行; } <<<“$ output”' –
@glennjackman请在你的评论中发表你给出的答案,因为它是迄今为止给出的最好的答案(所有其他答案都使用'sed'或'awk'或'tail' /''头'组合)。 –
@glenn jackman上面的输入非常有价值! – RAM237