有没有人知道我必须用来复制终端输出的功能?
例如,在终端中,如果我输入“ls”,它会给我一个文件列表。我想复制一些文本并将它们粘贴到下一个命令中以执行“cd”。 shell脚本能够做到吗?
答案 0 :(得分:3)
你对bash
听起来很不熟悉,所以这里有一些关于选择带有通配符和正则表达式的文件的提示。
列出以a
ls a*
列出以a
或c
开头的文件:
ls [ac]*
列出以a
,b
或c
开头的文件:
ls [a-c]*
列出以a-l
或n-z
开头的文件,但不包括以m
开头的文件:
ls [a-ln-z]*
列出除m
或大写字母以外的所有文件:
ls [^mA-Z]*
列出PNG
或JPG
张图片:
ls *{png,jpg}
列出具有3个字符/数字名称的PNG图像:
ls ???.png
另一个提示......这是复制和粘贴的替代方法。练习选择上面带有ls
的文件(因为ls
是无害的),当你拥有正确的正则表达式时,可以在下一个命令中使用!$
重复它(最后一个上一个命令的单词,无需重新输入。所以,练习你的正则表达式直到它看起来很好,例如选择均匀编号的PNG
图像:
ls *{0,2,4,6,8}.png
然后,获取这些文件的长列表:
ls -l !$
答案 1 :(得分:0)
使用ls | pbcopy
获取复制到剪贴板的文件(文件名)列表(mac / unix)。
要复制文本文件的内容,您可以使用cat
:
cat filename.txt | pbcopy
的定义