我经常会用很长的行来 grep 文件,从而导致一个匹配单词的输出相当于一页。
将输出限制为仅与终端宽度相同的字符的好方法是什么?
我意识到这意味着匹配的单词可能不存在于该行中。但我仍然想要上下文,所以仅文件名是不可接受的。
考虑这个包装函数,它将任何参数传递给 grep,然后将输出剪切到 $COLUMNS (或 80,如果未设置 COLUMNS):
function grepcut() {
grep "$@" | cut -c1-${COLUMNS:-80}
}
Run Code Online (Sandbox Code Playgroud)
像这样使用它:
$ grepcut sometext somefiles
Run Code Online (Sandbox Code Playgroud)
或者
$ set | grepcut LS_COLORS
Run Code Online (Sandbox Code Playgroud)