在终端中等待 nautilus-actions 后的按键

在终端中等待 nautilus-actions 后的按键

我需要从中执行一个脚本nautilus-actions,然后等待用户的任何输入,用户必须在终端消失之前读取脚本所做的事情。

这是我当前的nautilus-actions配置:

  • 运行时执行:gnome-terminal -x sh -c COMMAND
  • 使可执行文件:
    • 小路:gksudo
    • 参数:chmod +x %F

此脚本使文件可执行(+x),但我希望chmod在终端关闭之前实际看到输出(如果有)。这能实现吗?

答案1

您可以使用read(请参阅 shell 的手册页)让终端等待用户按下某个键以表明他们已读取输出。不幸的是,readfromdash相当有限,所以我建议使用bash

read -s -n1 -p "Press any key to continue"将会把提示打印到终端(-p),等待按下任意键(-n1)并且最后退出而不打印输入的键(-s)。

将其添加到您的脚本中可以为您的用户提供他们所需的所有时间。

更新:将上述内容整合到nautilus 动作,创建一个 bash 脚本,然后您可以在配置对话框中将其用作操作。

该脚本必须类似于以下内容。

#!/bin/bash
gksu chmod +x $1
read -s -n1 -p "Press any key to continue"

调用该脚本并将文件名作为第一个参数 - 就像您之前所做的那样chmod- 将为该文件设置可执行位,然后等待用户输入。

相关内容