如何在保持打开状态的 gnome 终端 window 中执行用 Python 编写的 Nautilus 脚本?

How to execute a Nautilus script written in Python inside a gnome-terminal window that stays open?

假设我想从 NautilusGNOME 的默认文件管理器)执行一个简单的 Python 脚本:

#!/usr/bin/python3
print("Hello")

当然,目的是与 Nautilus 中的选定文件进行交互,但我想保持简单。

我将脚本保存到文件夹 ~/.local/share/nautilus/scripts/,然后我可以从右键单击上下文菜单中执行它:

如何在 gnome-terminal 中执行此 nautilus script 并在脚本末尾保持终端打开?

我发现我可以使用两个脚本文件实现我想做的事情。

1) Hello.sh 打开 gnome-terminal(并可能保持打开状态)

第一个脚本文件 ~/.local/share/nautilus/scripts/Hello.sh 将出现在 Nautilus 脚本上下文菜单中,并将打开 gnome-terminal 以执行 .Hello.py:

#!/bin/bash
gnome-terminal -- python3 ~/.local/share/nautilus/scripts/.Hello.py

要强制终端 window 在执行后保持打开状态(以查看输出或在失败时用于调试目的),请按如下方式调整它以使 gnome-terminal 最后执行bash

#!/bin/bash
gnome-terminal -- bash -c "python3 ~/.local/share/nautilus/scripts/.Hello.py; bash"

2) .Hello.py 执行实际脚本

然后,第二个脚本文件 ~/.local/share/nautilus/scripts/.Hello.py 将在之前打开的 gnome-terminal windows 中执行,但将从 nautilus 脚本上下文菜单中隐藏.

#!/usr/bin/python3
print("Hello")