转载过来的
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' 然后保存就行了。 效果如图: ![]() 网上说的方法有些是添加如下内容: # 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' 效果如图. ![]() 我前面的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的什么区别
从上面的介绍我们可以了解到,我们把刚才那个alias命令加到了.bashrc文件后,每次 打开新的shell时就会自动执行一次alias ls='ls --color'。 理解了alias和.bashrc的作用以后,解决这类问题是相当容易的,呵呵。 本人linux菜鸟一个,上面有啥说的不对的,欢迎指教~ 补充: 今天从drinkey&城市流浪猫俩linux大牛处得知,网上的这种改法是比较全面的改法,还考虑到环境等因素。不过不管咋说我按照网上的方法都不成功,所以只能用我自己的了。有其他朋友有这类问题的话最好先试试网上的。 |