Mic*_*oße 1 python bash shell append
我正在尝试编写一个简短的脚本来将当前shell会话的某些环境变量记录到文件中.不幸的是,"python --version"的输出似乎忽略了(?)>>运算符并打印到shell而不是文件.
我的最小(不)工作示例:
rm path.log
echo "python --version" >> path.log
python --version >> path.log
Run Code Online (Sandbox Code Playgroud)
我希望文件path.log将具有以下内容:
python --version
Python 2.6.6
Run Code Online (Sandbox Code Playgroud)
但是"Python 2.6.6"行打印到shell而不是文件.我怎样才能解决这个问题?
谢谢!
PS:这完全没问题
gcc --version
Run Code Online (Sandbox Code Playgroud)
python --version输出到STDERR.
你需要合并STDERR到STDOUT:
python --version >> path.log 2>&1
Run Code Online (Sandbox Code Playgroud)
作为参考,您可以通过以下方式验证此类行为:
$ python --version 1>/dev/null
Python 2.7.4
Run Code Online (Sandbox Code Playgroud)
的STDOUT在上面的例子中被重定向到/dev/null.这意味着输出正在发送STDERR.
| 归档时间: |
|
| 查看次数: |
497 次 |
| 最近记录: |