linux ls命令的高亮设置

转载过来的
linux ls命令的高亮设置
2008-11-22 22:05
我原来装的Mandriva的ls高亮显示一直很正常,后来换了Ubuntu,结果ls命令的结果一直是白底黑字,很郁闷。不过很少上linux,也没太管。
这两天才考完了一门试,就切到linux下放松一下,嘿嘿。But在linux的终端里,ls出白底黑字的结果,看的实在是非常不爽!(Linux的终端可要比Win的强大很多)于是决定花点时间把它搞定。
先google了半天,然后到linux群里问,楞死找不到有效的方法==!
后来又查了不少资料,加上发挥了下自己的想象力,终于给搞定了,现将方法贴出来,很简单,说不定能做个参考。
方法相当简单,用vim编辑“/home/username/.bashrc“文件,在里面加上一行

alias ls='ls --color'

然后保存就行了。
效果如图:
linux ls命令的高亮设置_第1张图片

网上说的方法有些是添加如下内容:
# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ]; then
    eval "`dircolors -b`"
    alias ls='ls --color=auto'
    alias dir='ls --color=auto --format=vertical'
    alias vdir='ls --color=auto --format=long'
fi

# some more ls aliases
alias ll='ls -l'
alias la='ls -A'
alias l='ls -CF'

我按照这样的方法在打开新的shell的时候会提示“找不到 #alias命令”之类的错误,也不晓得咋回事。

在这里,我觉得这个方法并不重要,重要的是理解为什么这样改能让ls高亮显示。
这就有两个地方需要理解。

1--alias
alias是bash里面一个非常有用的功能--别名。
顾名思义,别名,就是给一个命令取另外一个名字。举一个非常简单的例子:假设说现在有一个命令是 “echo zerosoul is my ID”,这个命令有点长,如果频繁是用这个命令的话,每次输入那么长的字符串会很累。那我们就给他起个别名,就叫做“myid”好了,简短又好记,然后我们输入myid就会执行echo zerosoul is my ID这条命令。我们可以用alias来实现这个功能:

alias myid='echo zerosoul is my ID'

效果如图.
linux ls命令的高亮设置_第2张图片

我前面的alias ls='ls --color'其实也就是用ls --color来代替ls命令,而--color是ls的参数,带上后返回的内容会高亮显示。所以就能实现我们需要的高亮。
但是在终端输入的alias命令只在当前终端有效,我们换个终端就没有了。我们当然不能每次都输入这么一条alias命令在命名别名,这就要说到另外一个需要理解的地方--".bashrc"

2--.bashrc
实在懒得打字了,还想玩会游戏呢,这里我之间帖别人的一段文字。
来源:http://linux.chinaunix.net/doc/system/2005-02-03/1084.shtml

标题:.bash_profile和.bashrc的什么区别

作者:KornLee 2005-02-03 15:49:57 来自:Linux先生
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.

另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.

~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。
-------------End-------------
从上面的介绍我们可以了解到,我们把刚才那个alias命令加到了.bashrc文件后,每次 打开新的shell时就会自动执行一次alias ls='ls --color'。

理解了alias和.bashrc的作用以后,解决这类问题是相当容易的,呵呵。
本人linux菜鸟一个,上面有啥说的不对的,欢迎指教~

补充:
今天从drinkey&城市流浪猫俩linux大牛处得知,网上的这种改法是比较全面的改法,还考虑到环境等因素。不过不管咋说我按照网上的方法都不成功,所以只能用我自己的了。有其他朋友有这类问题的话最好先试试网上的。

你可能感兴趣的:(游戏,linux,ubuntu,vim,bash)