如何使 bash 更具可读性?

如何使 bash 更具可读性?

作为一名 Linux 用户,我花了很多时间在 bash 上进行研究。我一直对可读性如此之差感到有点沮丧。

今天,这件事让我很恼火,促使我采取行动。我眼前的问题被这个代码片段解决了,它将目录颜色更改为洋红色。 (令人烦恼的是,这导致我失去了所有其他ls颜色。)

所以我开始想知道,还有哪些其他调整可以使 bash 更具可读性?

答案1

也许晒伤了?http://ethanschoonover.com/solarized

有很多项目都在做类似的终端着色方案,着眼于可用性。

答案2

输出中的其他颜色ls消失了,因为您引用的博客文章给出的说明非常糟糕。如果您设置LS_COLORS'di=0;35',那么您已经刚刚指示 ls填色仅有的目录。从您的 中删除该设置.bashrc,在另一个终端中重新登录并执行

echo "$LS_COLORS"

您可能会看到一长组颜色设置。这是我所拥有的:

LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:\
bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:\
ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:\
*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:\
*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:\
*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:\
*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:\
*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:\
*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:\
*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:\
*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:\
*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:\
*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:\
*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:\
*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:\
*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:\
*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:\
*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:\
*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:\
*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36"

该变量的有用属性是,如果多次定义颜色,则最后一个设置将覆盖之前的任何设置。因此,如果您只想将显示目录的颜色更改为洋红色,请执行以下操作

export LS_COLORS="${LS_COLORS%:}:di=01;35:"

(冒号用于分隔设置。)

相关内容