我白天必须经常粘贴电子邮件,而且打字很耗时。这就是为什么我正在寻找一种通过按下按钮来完成此操作的方法。在 bash 中使用以下命令时,可以将我的邮件放在剪贴板上:
echo "[email protected]" | xclip -sel clip
运行它后,我可以成功转到另一个应用程序(例如 Firefox)并按 ctrl+v 粘贴它。当我通过快捷方式使用此命令时,它不起作用。
知道如何使这项工作有效吗?
PS 我还尝试了“xdotool”,将键盘快捷键设置为:
xdotool type 'l' 'o' 'r' 'e' 'm' '@' 'i' 'p' 's' 'u' 'm' '.' 'c' 'o' 'm'
还有一些变体,但它们都太滞后,并且只在字符串的一半处开始打印。
答案1
认为您可能想将两者结合起来,如下所示:
sh -c 'sleep 0.5; xdotool type "$(xclip -o -selection clipboard)"'
仅用于选择文本的键绑定。您需要确保当尝试运行命令时,绑定中的元键不会被按下(xdotool
创建按键,并且不会为您释放 Ctrl 键)。
其次,默认情况下xclip
选择XA_Primary
缓冲区而不是XA_CLIPBOARD
.因此,您应该将剪贴板作为 的选择参数传递xclip
。
要不就:
sh -c 'sleep 0.5; xdotool type "[email protected]"'
xclip
独自的:
sh -c 'echo "[email protected]" | xclip -sel clip && xclip -out -sel clip'
但这是一个又长又夸张的命令(我个人不喜欢这样)。