从管道中将值读入shell变量我试图让bash处理来自stdin的数据,但是没有运气。我的意思是以下工作:echo "hello world" | test=($(< /dev/stdin)); echo test=$testtest=echo "hello world" | read test; echo test=$testtest=echo "hello world" | test=`cat`; echo test=$testtest=我想要输出的地方test=hello world。我试过把“”引号括起来"$test"也不起作用。
3 回答
慕妹3242003
TA贡献1824条经验 获得超6个赞
read不会从管道读取(或者由于管道创建子壳,结果可能会丢失)。但是,您可以在Bash中使用here字符串:
$ read a b c <<< $(echo 1 2 3)
$ echo $a $b $c
1 2 3
但请参阅@ chepner的答案以获取相关信息lastpipe。
- 3 回答
- 0 关注
- 1323 浏览
添加回答
举报
0/150
提交
取消