【发布时间】:2021-10-17 12:03:22
【问题描述】:
我正在使用这个命令:
码头工人ps | awk '$2 ~ /^selenium/ { 打印 $1 }'
在 shell 中运行良好,但在使用 sh -c 运行时它不起作用,我收到此错误:
awk: cmd. line:1: ~ /^selenium/ { print }
awk: cmd. line:1: ^ syntax error
我想要的完整命令是 Python 脚本的一部分:
os.popen("nsenter -t 1 -m -u -n -i sh -c \"docker ps | awk -F/ '\''$2 ~ /^selenium/ { print $1 }'\''\"")
这可能是一些逃避问题,但我无法解决任何问题。
【问题讨论】:
-
不确定
nsenter在这里做了什么,但是你可以通过在启动容器时使用docker run --name selenium来避免很多类似的恶作剧;那么docker ps --filter name=selenium -q应该直接给你一个容器ID。