python-3.x - python3 os.system() 失败并出现错误 sh : 2: Syntax error: "|" unexpected

标签 python-3.x ubuntu

我正在尝试使用 python3 运行它system('echo %s|sudo -S %s' % (password, "date > " + file_path))
但将此视为错误sh: 2: Syntax error: "|" unexpected

最佳答案

一个可能不相关的问题是您没有正确引用命令中的输入和输出变量。

system('echo "%s"|sudo -S "%s"' % (password, "date > " + file_path))

但是,对于所有合法的文件名作为文件名。我建议使用 subprocess模块而不是 os.system ,将外壳完全排除在进程之外:
subprocess.Popen('echo %s|sudo -S %s' % (password, "date > " + file_path), stdout=subprocess.PIPE)

关于python-3.x - python3 os.system() 失败并出现错误 sh : 2: Syntax error: "|" unexpected,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48135701/

相关文章:

不尊重 Python 修补模拟

c - 设置程序调试缓冲区溢出系统

git - 为什么在 Windows 中使用 "git bash"时,它与在 Windows 中打开 "wsl Ubuntu"时看起来不一样?

linux - 在 Debian/Ubuntu 中模拟运行一个程序

linux - 'ln' 或 'ln -s' 的用法或应用场景是什么?

c - 错误 : _mm_clmulepi64_si128 was not declared in this scope

python - 如何使用多处理模块终止进程?

python-3.x - 从 python3.7 运行时连接到 Google App Engine 共享内存缓存

python - Pandas Concat 返回 "InvalidIndexError: Reindexing only valid with uniquely valued Index objects"错误

python - 模块未找到错误 : No module named 'Cython'