我想做的是
$echo $PATH | python --remain-interactive "x = raw_input().split(':')"
>>>
>>> print x
['/usr/local/bin', '/usr/bin', '/bin']
我想 ipython 解决方案是最好的。如果这无法实现,对于我想处理各种其他命令的输出的情况,您的解决方案是什么?之前绝望的时候用过 subprocess 来做,但并不理想。
更新:所以这越来越接近最终结果:
echo $PATH > /tmp/stdout.txt; ipython -i -c 'stdout = open("/tmp/stdout.txt").read()'
现在我们怎样才能把它弯曲成一个形式
echo $PATH | pyout
pyout
“我所有问题的神奇解决方案”在哪里。它可能是一个 shell 脚本,它编写管道输出然后运行 ipython。出于同样的原因,bp 所说的一切都失败了。