我正在尝试将一些shell脚本输出重定向到subprocess.call中的/ dev / null,但它总是在stdout上打印。
这是我的shell脚本
# cat /usr/local/scripts/test_unknown.sh
#!/bin/bash
echo "Testing Unknown..."
exit 3
在python中执行
# python
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import subprocess
>>> subprocess.call(["/bin/sh", "/usr/local/scripts/test_unknown.sh", "2>&1 >/dev/null"])
Testing Unknown...
3
>>>
在命令行中执行相同的脚本
# /bin/sh "/usr/local/scripts/test_unknown.sh" 2>&1 >/dev/null
#
我缺少什么?