【发布时间】:2020-05-04 23:30:47
【问题描述】:
我有以下 awk 命令
awk -F "|" '{ if($132==0 && $123==1) print $145}' abc.dat
我想通过从下面的变量 a、b、c 传递值而不是数值来生成 awk 命令并执行它,但它没有发生。它给了我语法错误。有人可以帮助我使用 python 脚本运行这个 awk 命令吗?
a = 132,
b = 123,
c = 145
我正在使用 python 3.4.4
【问题讨论】:
-
您使用的是 awk 还是 Python?你是在 shell 中从 Python 调用 awk 吗?为什么不直接在 Python 中处理文件?你的问题很混乱。
-
此要求需要 awk 命令才能使用 python 脚本 3.4.4 运行。是的,我必须使用 python 调用 awk 推荐。我这样做是为了自动化
-
不太清楚你想做什么......我猜它是在 python 中调用 shell 脚本?
import subprocess ; subprocess.run([awk command, some variable...])
标签: python python-3.x command-line-arguments