【发布时间】:2026-01-24 13:45:02
【问题描述】:
我想要求 shell 在我的 python 脚本中以一种很好的格式显示一个csv 文件。所以我写了以下内容:
printout = "column -s, -t < output.csv | less -#2 -N -S "
subprocess.call(printout.split(), shell = False)
我得到的错误是:
column: invalid option -- '#'
我有一个粗略的想法,它与shell=False有关;但是,当我将其设置为 True 并在 cmd 行中运行时,它会将我置于另一行,我必须 ctrl+C 才能退出。
【问题讨论】:
-
shell=False表示您没有外壳,因此没有任何东西知道如何处理重定向 (<) 或管道 (|)。使用shell=False实际上更好,但这意味着您需要在 Python 中进行更多设置。
标签: python command-line subprocess