命令无法通过快捷键运行

命令无法通过快捷键运行

我可以跑

xclip -s primary -o >> file1.txt

在终端上没问题,但使用自定义快捷键运行时没有任何反应。我该如何解决这个问题?

答案1

作为@老年怪人指出他的回答, 的正确论证xclip-selection而不是-s

xclip -selection primary -o >> file1.txt

然而,这不是唯一的问题。键盘快捷键无法在 Bash shell 中运行,但您尝试>>在此处使用输出重定向 (),这是 Bash 的一项功能。

因此,您必须在 Bash shell 中明确运行快捷命令才能使重定向正常工作:

bash -c 'xclip -selection primary -o >> file1.txt'

不过,您应该指定输出文件的完整绝对路径。不确定是否有必要,但无论如何,这样会更好。

答案2

我曾经在将某些内容放入剪贴板时遇到过同样的问题,所以你的问题让我想起了这一点:)

我在快捷方式定义的命令字段中输入:

/bin/bash -c 'echo -n "Display: $DISPLAY" | xsel -b -i'

这成功地将 Display 变量的内容放入剪贴板。

我当时的解释是——没有多想——该程序是由 lightdm init 进程直接调用的,因此它没有 shell。没有 shell 就没有 shell 重定向 :)

所以快速的解决方法是给该命令一个 shell。

答案3

也许 -s 开关未被理解。来自手册页。

-selection
              specify which X selection to use, options are "primary"  to  use
              XA_PRIMARY  (default),  "secondary"  for  XA_SECONDARY or "clip‐
              board" for XA_CLIPBOARD
 -version
              show version information

 -silent
              fork into the background to wait for requests, no  informational
              output, errors only (default)

请尝试使用 -selection 开关。

来源man xclip

相关内容