python - 双击通过bash脚本在控制台中执行python脚本

标签 python linux bash ubuntu

我有一个 python 脚本,如果我使用 python3 script.py 在控制台上运行,它运行良好.出于某种原因,该脚本应通过 bash 脚本“start.sh”执行。 MWE 将是

#!/bin/bash 
python3 GUIpyPCS.py
当我通过双击它运行脚本时,它不会打开一个终端窗口。因此,python 脚本在后台不可见地执行,而不是在新的控制台窗口上执行。
如何确保通过双击 bash 脚本在控制台上执行 python 脚本?有什么我可以添加到 bash 脚本中的吗?我目前正在 Kubuntu 20.04 上进行测试,但该解决方案也应该适用于其他发行版/窗口管理器。

最佳答案

---------- 假设 ----------

  • 脚本位于目录
  • 您在图形界面中打开该目录(Nemo、Nautilus、任何其他文件管理器)
  • 你双击代表脚本的图标
  • 您希望看到一个终端窗口打开,其中执行脚本

  • ---------- 在你的脚本中做 ----------
  • 启动终端窗口
  • 该终端命令包括对脚本的调用
  • 最后调用read命令,保持窗口打开直到你完成
  • 你按回车键关闭窗口

  • ---------- 前 ----------
    #!/bin/bash
    #
    xterm -e "/bin/ls /etc; read" &
    
    ---------- 详情 ----------
  • -e xterm 的选项是将在新窗口中执行的命令
  • 我把 /bin/ls /etc; read而不是你的脚本。你可以把 your_script.bash arg1 arg2; read
  • 你可以用 gnome-terminal 做类似的事情而不是 xterm
  • read不是必需的,它可以是 sleep 5例如。或者,如果您的脚本已经有延迟或什么,您可能不需要任何东西。
  • 我用了xterm因为它适用于所有发行版,无论您使用哪个窗口管理器。
  • 关于python - 双击通过bash脚本在控制台中执行python脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67235448/

    相关文章:

    git clone 致命的 : cannot create work tree dir permission denied

    java - 从 Azure 上的进程运行时 Linux 设置 -x

    android - 如何知道某个进程是否在 Android 设备中运行?

    linux - 快速查找数百万个文件中的文件

    mysql - 以相同格式从 MySQL TEXT 类型检索数据

    python - 单击按钮并按回车键时调用相同的函数

    python - SQL 时间戳默认当前时间戳 : How to remove miliseconds?

    iphone - iPhone 上的线性代数(python/numpy?)

    Python:在字符串中查找字符串,然后返回其周围的字符串

    linux - 将 Linux 源代码解析为抽象语法树