我经常需要从终端复制和粘贴文本。有没有办法将命令的输出重定向到shell变量或将输出放在剪贴板中的另一个命令?
答案 0 :(得分:19)
使用pbcopy
和pbpaste
。发送到pbcopy
的任何内容都会进入剪贴板。运行pbpaste
会将剪贴板的内容发送到标准输出,您可以像所有其他命令一样链接它们。
您可以在此处找到一些示例用法:http://osxdaily.com/2007/03/05/manipulating-the-clipboard-from-the-command-line/
答案 1 :(得分:3)
pbcopy
和pbpaste
会将非ASCII字符替换为问号。将LC_CTYPE
设置为UTF-8
可以避免这种情况。
LC_CTYPE=UTF-8 pbpaste
你也可以使用osascript:
osascript -e 'on run {input}
set the clipboard to input
end' "ä"
osascript -e 'the clipboard as text'