Shell是系统管理员跟Linux系统打交道的主要途径。大部分的管理任务都是通过shell工具来完成的。有时候,要看一个系统管理员是否精通Linux操作系统的管理,只需要看看他shell操作的熟练程度就可以来判断。Shell工具虽然是一个命令行的窗口,对于部分系统管理员来说操作起来可能比较麻烦一点。但是这个工具提供了很多帮助管理员来进行系统维护的手段。合理使用这些手段,会让Shell工具更加的便捷,更加具有人性化。
一、定义别名让命令更加的简捷。
Linux系统在设计的时候,崇尚的是简单即美的设计理念。如在shell中的各种命令,基本上都只是完成一些特定的简单功能。如ls命令只是列出名录与文件的名字。这跟Windows操作系统的Dos命令不同。DOS命令往往是一个命令加上参数可以实现一些很复杂的功能。虽然在Linux操作系统的shell命令中也可以带上参数,但是仍然要比DOS命令简单的多。所以在Linux操作系统的shell命令就要比Dos命令多的多。这有利于用户了解这些命令的用途,而且通过命令的组合可以实现一些复杂的功能。所以命令的使用更加灵活。但是要实现一个功能,要采用多个命令的组合,在书写的时候就会比较麻烦。
如现在在一个图片目录下存放着很多产品的图片。现在用户想将这些产品图片的详细信息,如产品的名字、最近更新时间、文件大小等等信息保存到一个文件中。或者说,湘江操作系统中所有的图片文件都找出来,并以列表的形式将图片的名称保存到文本文件中。此时该如何处理呢?要实现这个需求的话,光用一个命令无法实现,而需要使用几个命令的组合。如通过ls *.jpg –l >list.txt命令可以查询处当前目录下所有JPG图片的信息,并将这个文件的详细信息保存到一个文本文件中。
如果经常需要用到这个功能的话,那么每次书写的时候都会非常的麻烦。这个命令还算简单的。有时候为了实现某些特定的复杂功能,可能需要十多个命令组合来完成。此时组合后的命令就会非常的长。如果每次都输入的话,不仅准确率不高,而且也浪费时间。为了解决这个问题,在操作系统中设计了一个别名的功能。简单的说,就是将用户组合的命令保存到系统中,然后给这个组合命令取一个新的命令。以后系统管理员只需要输入这个别名就可以调用自己所创建的组合命令。
在Linux操作系统中定义别名是很简单的一件事情,主要是通过alias关键字来完成。其格式为alias 别名=’组合命令’。如alias ljpg='ls *.jpg -l>sh1.txt'这就定义了一个别名。主要实现的功能就是查询当前目录下所有的JPG文件并将详细的信息保存到一个文本文件中。如此定义之后,下次系统管理员还需要这个功能的话,则可以直接执行ljpg命令,就可以调用后面一长串的命令了。通常情况下一些有经验的系统管理员往往会将自己常用的命令组合定义成别名,以方便其后续的调用。如此的话,就不用每次都重复输入一长串代码了。这也是提高组合命令重复利用率的一种有效手段。