我在 PS1 提示中使用了几种颜色,例如
\033]01;31\] # pink
\033]00m\] # white
\033]01;36\] # bold green
\033]02;36\] # green
\033]01;34\] # blue
\033]01;33\] # bold yellow
Run Code Online (Sandbox Code Playgroud)
在哪里可以找到我可以使用的颜色代码列表?
我查看了Colorize Bash Console Color,但它没有回答我关于实际代码列表的问题。
如果还有一个更易读的表格,那就太好了。
例如,我在~/.bashrc文件(或等价物)中看到的一个常见别名是
alias rm='rm -i'
Run Code Online (Sandbox Code Playgroud)
但是,我看到人们建议不要这样做,因为
rm,您无意中删除了一些重要的内容。[1]y或执行,这与整个目的背道而驰。yesrm还有其他理由不建议这样做吗?可能有些程序只是简单地调用rm而不是\rm,并且对它进行别名可能会给他们带来问题?
我rm仅将其用作示例,但我也看到过类似别名cp或被mv别名覆盖的其他命令。就个人而言,我正在慢慢训练自己使用这样的别名来代替rm -i:
alias trash=`mv -v -t $HOME/.Trash`
Run Code Online (Sandbox Code Playgroud) 是否有一个命令可用于在将整个字符串传递给 stdout 的同时轻松突出显示(使用颜色、粗体文本或倒置的背景/前景)标准输入中的特定字符串?我正在考虑构建它,但如果它已经存在,我宁愿使用它。一些理想的功能:
我可以执行以下操作以查看“cat”的输出中是否有可用的单词:
cat filename | grep word
Run Code Online (Sandbox Code Playgroud)
这将过滤输出并仅显示那些包含“word”的行。现在,是否可以只突出显示输出中的“单词”而不删除其他行?
我有一个别名:alias grep='grep --color=auto'. 我希望有一些方法不仅可以打印匹配行,还可以打印所有行,并且只打印颜色匹配模式。我怀疑是否有一个选项可以做到这一点grep。任何其他工具?或者想法如何实现这一目标?
$cat contents.txt
cat-1.15
cat-1.15
cat-1.15
cat-1.18
Run Code Online (Sandbox Code Playgroud)
上面的输出有空行
$cat contents.txt | grep cat
导致单词 cat 被突出显示,但结果文本也被合并,消除了空行
cat-1.15
cat-1.15
cat-1.15
cat-1.18
Run Code Online (Sandbox Code Playgroud)
如何在不影响文本结构的情况下 grep 突出显示,以便唯一的区别是突出显示的 grep 术语?
伙计们,我想知道是否存在只突出显示输入文本的某些部分的命令,而不是像grep这样过滤它。
举个例子,假设以下输入文本:
foo bar
gaz das
xar
Run Code Online (Sandbox Code Playgroud)
grep "bar\|gaz" input将打印前两行,突出显示bar和gaz,但不会显示xar。
我知道我可以简单地为-C参数设置一个大常量,因此它会“始终”显示上下文,例如: grep -C1000 "bar\|gaz" input,但我不确定这是否有效,或者是否有更好的工具。