【问题标题】:opening a gnome terminal via python doesn't seem to work when opening a specific directory打开特定目录时,通过 python 打开 gnome 终端似乎不起作用
【发布时间】:2016-09-09 06:21:50
【问题描述】:

如果我从 gnome 终端运行以下命令:

gnome-terminal --working-directory="/home/users"

我在“/home/users”目录中获得了一个新的 shell。

如果我在 python 中运行以下命令:

import subprocess
subprocess.Popen(['gnome-terminal', '--working-directory="/home/users"'])

我在我的主目录中打开了一个 shell - 不是在“/home/users”中?

【问题讨论】:

    标签: python subprocess gnome-terminal


    【解决方案1】:

    就我而言,当我从参数中删除 "" 时,它似乎有效:

    import subprocess    
    subprocess.call(['gnome-terminal', '--working-directory=/home/test'])
    

    在我的情况下也存在/home/test

    【讨论】:

    • 确实,当你没有 shell=True 时,shell 引用是错误的(在绝大多数情况下这是一件好事)但如果你不明白 shell 的作用,那就有点奇怪了.
    • 当我输入shell=true 并且我在路径中使用撇号然后我仍然得到床结果
    • 那就别那样做了。 shell=True 是邪恶的,尤其是如果你没有牢牢把握它到底做了什么。 (但基本上,您需要将字符串列表转换回单个字符串才能使其正常工作。)
    • 好的,谢谢,我可能误会你了,我以为我做错了什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-03
    • 2015-07-14
    • 1970-01-01
    • 2016-04-12
    相关资源
    最近更新 更多