Shell命令集杨亚坤A:文件管理类1.名称:cat使用权限:所有使用者使用方式:cat[-AbeEnstTuv][--help][--version]fileName说明:把档案串连接后传到基本输出(萤幕或加fileName到另一个档案)参数:-n或--number由1开始对所有输出的行数编号-b或--number-nonblank和-n相似,只不过对于空白行不编号-s或--squeeze-blank当遇到有连续两行以上的空白行,就代换为一行的空白行-v或--show-nonprinting范例:cat-ntextfile1textfile2把textfile1的档案内容加上行号后输入textfile2这个档案里cat-btextfile1textfile2textfile3把textfile1和textfile2的档案内容加上行号(空白行不加)之后将内容附加到textfile3里。范例:把textfile1的档案内容加上行号后输入textfile2这个档案里cat-ntextfile1textfile2把textfile1和textfile2的档案内容加上行号(空白行不加)之后将内容附加到textfile3里:cat-btextfile1textfile2textfile3cat/dev/null/etc/test.txt此为清空/etc/test.txt档案内容cat也可以用来制作imagefile。例如要制作软碟的imagefile,将软碟放好后打cat/dev/fd0OUTFILE2.名称:rm使用权限:所有使用者使用方式:rm[options]name...说明:删除档案及目录。参数:-i删除前逐一询问确认。-f即使原档案属性设为唯读,亦直接删除,无需逐一确认。-r将目录及以下之档案亦逐一删除。范例:删除所有C语言程序档;删除前逐一询问确认:rm-i*.c将Finished子目录及子目录中所有档案删除:rm-rFinished3.名称:mkdir使用权限:于目前目录有适当权限的所有使用者使用方式:mkdir[-p]dirName说明:建立名称为dirName之子目录。参数:-p确保目录名称存在,不存在的就建一个。范例:在工作目录下,建立一个名为AAA的子目录:mkdirAAA在工作目录下的BBB目录中,建立一个名为Test的子目录。若BBB目录原本不存在,则建立一个。(注:本例若不加-p,且原本BBB目录不存在,则产生错误。)mkdir-pBBB/Test5.名称:rmdir使用权限:于目前目录有适当权限的所有使用者使用方式:rmdir[-p]dirName说明:删除空的目录。参数:-p是当子目录被删除后使它也成为空目录的话,则顺便一并删除。范例:将工作目录下,名为AAA的子目录删除:rmdirAAA在工作目录下的BBB目录中,删除名为Test的子目录。若Test删除后,BBB目录成为空目录,则BBB亦予删除。rmdir-pBBB/Test6.名称:cut使用权限:所有使用者用法:cut-cnum1-num2filename说明:显示每行从开头算起num1到num2的文字。范例:shellcatexampletest2thisistest1shellcut-c0-6example##print开头算起前6个字元test2thisicut其实很有用-cm-n表示显示每一行的第m个字元到第n个字元。例如:---------file-----------liubi2314000---------file-----------#cut-c3-9,12-20fileliubi14000-fm-n表示显示第m栏到第n栏(使用tab分隔)。例如:---------file-----------liubi2314000---------file-----------#cut-f1,3fileliubi140007.名称:cp使用权限:所有使用者使用方式:cp[options]sourcedestcp[options]source...directory说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。参数:-a尽可能将档案状态、权限等资料都照原状予以复制。-r若source中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。-f若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。范例:将档案aaa复制(已存在),并命名为bbb:cpaaabbb将所有的C语言程序拷贝至Finished子目录中:cp*.cFinished8.名称:ln使用权限:所有使用者使用方式:ln[options]sourcedist,其中option的格式为:[-bdfinsvF][-Sbackup-suffix][-V{numbered,existing,simple}][--help][--version][--]说明:Linux/Unix档案系统中,有所谓的连结(link),我们可以将其视为档案的别名,而连结又可分为两种:硬连结(hardlink)与软连结(symboliclink),硬连结的意思是一个档案可以有多个名称,而软连结的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬连结是存在同一个档案系统中,而软连结却可以跨越不同的档案系统。lnsourcedist是产生一个连结(dist)到source,至于使用硬连结或软链结则由参数决定。不论是硬连结或软链结都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。参数:-f:链结时先将与dist同档名的档案删除。-d:允许系统管理者硬链结自己的目录。-i:在删除与dist同档名的档案时先进行询问。-n:在进行软连结时,将dist视为一般的档案。-s:进行软链结(symboliclink)。-v:在连结之前显示其档名。-b:将在链结时会被覆写或删除的档案进行备份。-SSUFFIX:将备份的档案都加上SUFFIX的字尾-VMETHOD:指定备份的方式--help:显示辅助说明--version:显示版本范例:将档案yy产生一个symboliclink:zzln-syyzz将档案yy产生一个hardlink:zzlnyyxx9.名称:file功能说明:辨识文件类型。语法:file[-beLvz][-f名称文件][-m魔法数字文件...][文件或目录...]补充说明:通过file指令,我们得以辨识该文件的类型。参数:-b列出辨识结果时,不显示文件名称。-c详细显示指令执行过程,便于排错或分析程序执行的情形。-f名称文件指定名称文件,其内容有一个或多个文件名称呢感,让file依序辨识这些文件,格式为每列一个文件名称。-L直接显示符号连接所指向的文件的类别。-m魔法数字文件指定魔法数字文件。-v显示版本信息。-z尝试去解读压缩文件的内容。10.名称:touch使用权限:所有使用者使用方式:touch[-acfm][-rreference-file][--file=reference-file][-tMMDDhhmm[[CC]YY][.ss]][-dtime][--date=time][--time={atime,access,use,mtime,modify}][--no-create][--help][--version]file1[file2...]说明:touch指令改变档案的时间记录。ls-l可以显示档案的时间记录。参数:a改变档案的读取时间记录。m改变档案的修改时间记录。c假如目的档案不存在,不会建立新的档案。与--no-create的效果一样。f不使用,是为了与其他unix系统的相容性而保留。r使用参考档的时间记录,与--file的效果一样。d设定时间与日期,可以使用各种不同的格式。t设定档案的时间记录,格式与date指令相同。--no-create不会建立新档案。--help列出指令格式。--version列出版本讯息。范例:最简单的使用方式,将档案的时候记录改为现在的时间。若档案不存在,系统会建立一个新的档案:touchfiletouchfile1file2将file的时间记录改为5月6日18点3分,公元两千年。时间的格式可以参考date指令,至少需输入MMDDHHmm,就是月日时与分:touch-c-t05061803filetouch-c-t050618032000file将file的时间记录改变成与referencefile一样。touch-rreferencefilefile将file的时间记录改成5月6日18点3分,公元两千年。时间可以使用am,pm或是24小时的格式,日期可以使用其他格式如6May2000。touch-d6:03pmfiletouch-d05/06/2000filetouch-d6:03pm05/06/2000filetouch也可以制造一个空档(0byte).例如DHCPServer所需的/etc/dhcpd.leases,dhcpd必须要有这个档案才能运作正常.[root@/root]#touch/etc/dhcpd.leases[root@/root]#ls-l/etc/dhcpd.leases-rw-r--r--1rootroot0Jul305:50/etc/dhcpd.leases记得上一次重灌前把/etc下的设定档tar起来,重灌好之后把原有设定还原,却发现系统检查设定档的时间有问题,这个时候用find/etc-name*-exectouch{};就可以把设定档的时间更新到与现在一致了。11.名称:less使用权限:所有使用者使用方式:less[Option]filename说明:less的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less允许使用者往回卷动以浏览已经看过的部份,同时因为less并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如vi)来的快速12.名称:more使用权限:所有使用者使用方式:more[-dlfpcsu][-num][+/pattern][+linenum][fileNames..]说明:类似cat,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按b键就会往回(back)一页显示,而且还有搜寻字串的功能(与vi相似),使用中的说明文件,请按h。参数:-num一次显示的行数-d提示使用者,在画面下方显示[Pressspacetocontinue,'q'toquit.],如果使用者按错键,则会显示[Press'h'forinstructions.]而不是'哔'声-l取消遇见特殊字元^L(送纸字元)时会暂停的功能-f计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)-p不以卷动的方式显示每一页,而是先清除萤幕后再显示内容-c跟-p相似,不同的是先显示内容再清除其他旧资料-s当遇到有连续两行以上的空白行,就代换为一行的空白行-u不显示下引号(根据环境变数TERM指定的terminal而有所不同)+/在每个档案显示前搜寻该字串(pattern),然后从该字串之后开始显示+num从第num行开始显示fileNames欲显示内容的档案,可为复数个数范例:more-stestfile逐页显示testfile之档案内容,如有连续两行以上空白行则以一行空白行显示。more+20testfile从第20行开始显示testfile之档案内容.13.名称:chmod使用权限:所有使用者使用方式:chmod[-cfvR][--help][--version]modefile...说明:Linux/Unix的档案调用权限分为三级:档案拥有者、群组、其他。利用chmod可以藉以控制档案如何被他人所调用。参数:mode:权限设定字串,格式如下:[ugoa...][[+-=][rwxX]...][,...],其中u表示该档