Linux 着色查找?

JPe*_*ter 8 linux find color

是否可以“着色” find 的输出?

我发现在我的所有服务器上搜索 /home 并执行 'rm' 某些文件。由于这些与我的其他查找结果混合在一起,因此我想为它们着色。

这可能吗?

vio*_*let 6

我通常用来突出显示滚动命令行文本的是使用这个 bash+perl 函数:

highlight() { perl -pe "s/$1/\e[1;31;43m$&\e[0m/g"; }

像这样:

command | highlight "desired text"

  • grep 还丢弃不匹配的行:( Dennis Williamson 的答案大致相同,不过 :D (2认同)

Gil*_*il' 6

使用 GNU find,您可以使用-printf而不是-print自定义打印文件名的方式。(您也可以使用标准 find 来执行此操作,但以一种迂回的方式通过-exec sh -c 'echo ...' {}.)例如,以下命令以绿色打印可执行文件,并以默认颜色打印其他常规文件:

find . -type f \( -perm +100 -printf '\033[32m%p\033[0m\n' -or -print \)
Run Code Online (Sandbox Code Playgroud)