簡體   English   中英

運行 docker 和使用 python 腳本的命令

[英]run a docker and a command using python script

我必須運行 docker,然后使用 python 腳本在 workdir 中運行命令。

我正在嘗試按如下方式進行:

command = ['gnome-terminal', '-e', "bash -c 'sudo /home/mpark/Escriptori/SRTConverter/shell_docker.sh; echo b; exec $SHELL'"]

p = subprocess.Popen(command)

其中“sudo /home/mpark/Escriptori/SRTConverter/shell_docker.sh”是一個 shell 腳本,其中 docker 以 root 權限運行

第一個命令“sudo /home/mpark/Escriptori/SRTConverter/shell_docker.sh”運行良好,但第二個必須在容器內運行的“echo b”不起作用。

謝謝!

我認為“echo b”在與第一個命令相同的 shell 中執行,它在新終端 window 中運行。而不是在 gnome-terminal 中使用“-e”標志,你應該使用“-x”標志,它允許您在新終端 window 中運行多個命令。試試這個:

command = ['gnome-terminal', '-x', "bash -c 'sudo /home/mpark/Escriptori/SRTConverter/shell_docker.sh; echo b; exec $SHELL'"]
p = subprocess.Popen(command)

這將打開一個新終端 window 並在該 window 中運行命令"sudo /home/mpark/Escriptori/SRTConverter/shell_docker.sh""echo b"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM