我想要一个简单的半安全命令,使用 gpg 对称加密来加密文件,然后删除原始文件。在终端中,此命令运行正常:
gpg --passphrase-file /home/xxx/.gnupg/sympass --symmetric <file> && rm <file>
要加密(和删除)的文件在哪里<file>
。这在终端中运行良好,但当我尝试以这种方式在 Thunar 中执行自定义操作时
xfce4-terminal -e gpg --passphrase-file /home/xxx/.gnupg/sympass --symmetric %f && rm %f
并尝试在 Thunar 中使用此操作,没有任何反应。为什么?是否有某种方法可以调试 Thunar 自定义操作?
答案1
这里有两个问题。一个是无法&&
识别,您需要一个完整的 shell;另一个是,为了运行它,您需要一个 tty,而 thunar 从 GUI 菜单启动时没有这个 tty。因此,首先编写一个包含以下内容的脚本:
#!/bin/bash
gpg --passphrase-file /home/beos/.gnupg/sympass --symmetric "$1" && rm "$1"
使脚本可执行(chmod a+x /path/to/script.sh
),然后将操作设置为:
xfce4-terminal -x /path/to/script.sh %f
这应该会导致它在终端和正常的 bash 会话中运行,因此它应该按预期工作。