您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 第2章-Linux常用命令剖析
第2章常用的Linux命令2.1文件和目录操作命令2.2显示命令2.3进程管理和作业控制2.4文件压缩和备份2.5网络命令2.6其他命令习题2.1文件和目录操作命令2.1.1pwd、cd1. pwd——显示(打印)用户当前所处的目录这是再常用不过的命令了,如果不知道自己当前所处的目录,就必须使用它。这个命令和DOS下的不带任何参数的cd命令的作用是一样的。其用法如下:[test@redflagtest]$pwd/home/test说明当前目录是/home/test。2. cd目录名——改变当前所处的目录或处理绝对目录和相对目录如果用户当前处于/bin目录,想进入/etc目录,可以键入:[test@redflag/bin]$cd/etc2.1.2ls、tree1. ls[参数]路径或文件名——列出文件或子目录的信息参数选项:-a:显示所有的文件,包括以“.”开头的文件(即隐含文件)。-l:以长格式显示文件或子目录的信息。-i:显示每个文件的索引(节点)号。执行命令[test@redflagtest]$ls-a显示当前目录下的所有文件,输出:bakchap1.txtDesktoptxtLinux系统用颜色来区分文件类别。缺省时,蓝色代表目录,绿色代表可执行文件,红色代表压缩文件,浅蓝色代表链接文件,灰色代表其他文件。2. tree目录名——以树的形式显示指定目录下的内容[test@redflagtest]$tree这是不带任何参数的tree命令,以树的形式显示当前目录下的文件和子目录,会递归到各子目录。例如:[test@redflagtest]$tree/etc/rc.d以树的形式显示目录/etc/rc.d下的文件和子目录。2.1.3mkdir、rmdir1. mkdir[参数]目录名——建立目录目录可以是绝对路径,也可以是相对路径。参数选项:-p:建立目录时,如果父目录不存在,则此时可以与子目录一起建立。例如:[test@redflagtest]$mkdirdir1在当前目录下建立dir1目录。[test@redflagtest]$mkdir-pdir2/bak在dir2目录下建立bak目录,如果dir2目录不存在,那么同时建立dir2目录。2. rmdir[参数]目录名——删除目录目录同样可以是绝对路径,也可以是相对路径。参数选项:-p:一起删除父目录时,父目录下应无其他目录。例如:[root@redflag/root]#rmdirtest删除当前目录下的test目录。删除目录时,被删除的目录下应无文件或目录存在。[root@redflag/root]#rmdir-plongkey/test删除当前目录下的longkey/test目录。删除目录test时,如果父目录longkey下无其他内容,则一起删除longkey目录。2.1.4cp、rm、mv、ln1. cp[参数]源文件目标文件——拷贝文件或目录相当于DOS下的copy命令。参数选项:-f:如果目标文件或目录存在,先删除它们再拷贝(即覆盖),并且不提示用户。-i:如果目标文件或目录存在,提示是否覆盖已有的文件。-R:递归复制目录,即包含目录下的各级子目录。2. rm[参数]文件名或目录名——删除文件或目录相当于DOS下的del命令。参数选项:-f:删除文件或目录时不提示用户。-i:删除文件或目录时提示用户。-R:递归删除目录,即包含目录下的文件和各级子目录。例如:[test@redflagtest]$rm*删除当前目录下的所有文件,但子目录和以“.”开头的文件(即隐含文件)不删除。[test@redflagtest]$rm–iRbak删除当前目录下的子目录bak,包含其下的所有文件和子目录,并且提示用户确认。3. mv[参数]源文件或目录目标文件或目录——移动文件或目录相当于DOS下的move命令。参数选项:-i:如果目标文件或目录存在时,提示是否覆盖目标文件或目录。-f:不论目标文件或目录是否存在,均不提示是否覆盖目标文件或目录。值得注意的是,mv可以用来更改文件名或目录名。例如:[test@redflagtest]$mv1.txt2.txt这里移动文件时并不改变文件的目录,如果2.txt原来不存在,则实际上是1.txt更名为2.txt。[test@redflagtest]$mv~/txtbak/bak把个人主目录下的目录txtbak移动到/bak目录下。4. ln[参数]源文件或目录链接名——建立链接参数选项:-s:建立符号链接(即软链接),不加该项时建立的是硬链接。例如:[test@redflagtest]$lntelno.txttelno2.txt给源文件telno.txt建立一个硬链接telno2.txt,这时telno2.txt可以看作是telno.txt的别名,它和telno.txt不分主次。telno.txt和telno2.txt实际上都指向硬盘上的相同位置,使用telno.txt作为文件名所做的更改,会在telno2.txt得到反映。硬链接有局限性,不能建立目录的硬链接。2.1.5chmod、chown、chgrp1. chmod模式文件或目录名——改变文件或目录的访问权限Linux系统是个多用户系统,应该能做到不同的用户能同时访问不同的文件,因此一定要有文件权限控制机制。Linux系统的权限控制机制和Windows的权限控制机制有着很大的差别。Linux的文件或目录都被一个用户拥有时,这个用户称为文件的拥有者(或所有者),同时文件还被指定的用户组所拥有,这个用户组称为文件所属组。要说明的是,一个用户可以是不同组的成员,这可以由管理员控制,我们将在用户管理这一章介绍如何控制的问题。文件的权限由权限标志来决定,权限标志决定了文件的拥有者、文件的所属组、其他用户对文件访问的能力。可以使用“ls–l”命令来显示权限标志。例如:[test@redflagtest]$ls-l-rw-rw-r--1longkeyroot1620A2422:23chap1.txt本例中,文件chap1.txt的拥有者是longkey,所属组是root。这里我们特别关心的是输出行前面的第1~10个字符。第1个字符代表文件类别,第2~4个字符“rw-”是文件拥有者的权限,第5~7个字符“rw-”是文件所属组的权限,第8~10个字符“r--”是其他用户(即除了root用户和longkey用户组里的用户之外的用户)文件拥有者的权限。而权限均用三个字符表示,依次为读(r)、写(w)、执行(x),如果某一位为“-”,则表示没有相应的权限,例如:“rw-”表示有读、写的权限,没有执行的权限。在本例中,文件拥有者longkey用户对文件有读、写的权限,root组的所有用户对文件也有读、写的权限,而其他用户对文件只有读的权限。设定文件权限时,在模式中常用以下的字母代表用户或用户组:u——文件的拥有者;g——文件的所属组;o——其他用户;a——代表所有用户(即u+g+o)。权限用以下字符表示:r ——读权限;w——写权限;x——执行权限;最后要指明是增加(+)还是减少(-)权限,或是绝对权限(=)。【实例2.2】[root@redflag/root]#chmodo+wchap1.txtchap1.txt的权限由原来的“rw-rw-r--”变为“rw-rw-rw-”,表示增加其他用户对文件的写权限。【实例2.3】[root@redflag/root]#chmodu=rw,g=rw,o=rchap1.txtchap1.txt的权限变为“rwxrw-r---”,不论原来的权限是什么,这表示拥有者对文件有读、写的权限,所属组的用户对文件也有读、写的权限,而其他用户只有读的权限。我们在以上设置权限时,用字符表示权限和用户,实际上我们也经常使用八进制来表示。读、写、执行依次各自对应一个二进制位“???”,如果某位为“0”,则表示无权限;如果某位为“1”,则表示有权限。例如:文件权限为r---w---x时,用二进制表示为100010001,用八进制可以表示为421。例如:[root@redflag/root]#chmod664chap1.txt等同于:[root@redflag/root]#chmodu=rw,g=rw,o=rchap1.txt2. chown用户名文件或目录名——改变文件(或目录)的拥有者或所属组例如:[root@redflag/root]#chownlongkeychap1.txt把文件chap1.txt的拥有者改为longkey用户。[root@redflag/root]#chownlongkey:rootchap1.txt把文件的拥有者改为longkey用户,同时文件的所属组改为root组。3. chgrp组文件或目录——改变文件或目录的所属组chown可以同时改变文件拥有者和所属者,chgrp只具有改变所属组的功能。例如:[root@redflag/root]#chgrprootchap1.txt文件chap1.txt的所属组设为root组。2.1.6find、grep1. find路径匹配表达式——查找文件所在的目录路径可以是多个路径,路径之间用空格隔开。查找时,会递归到子目录。匹配表达式:-name:指明要查找的文件名,支持通配符“*”和“?”。-userusername:查找文件的拥有者为username的文件。-groupgrpname:查找文件的所属组为grpname的文件。-atimen:指明查找前n天访问过的文件(仅第n天这一天)。-atime+n:指明查找前n天之前访问过的文件。-atime-n:指明查找前n天之后访问过的文件。-sizen:指明查找文件大小为n块(block)的文件。-print:搜索结果输出到标准设备。例如:[root@redflag/root]#find/-namepasswd-print从根目录起查找名为passwd的文件,并把结果输出到标准设备。[root@redflag/root]#find/home/etc-userlongkey-print在目录/home和目录/etc中查找longkey用户所拥有的文件。例如:[root@redflag/root]#grep-2Hello!chap.txt在文件chap1.txt中查找所有含有字符串“Hello!”的行,如果找到,显示该行及该行前后各2行的内容。文件名可以使用通配符*和?,如果要查找的字符串带空格,可以使用单引号或双引号括起来。例如:[root@redflag/root]#grep-2Hello!chap.txt在文件chap1.txt中查找所有含有字符串“Hello!”的行,如果找到,显示该行及该行前后各2行的内容。文件名可以使用通配符*和?,如果要查找的字符串带空格,可以使用单引号或双引号括起来。2. diff[参数]源文件目标文件——比较两个文件内容的不同参数选项:-q:仅报告是否相同,不报告详细的差异。-i:忽略大小写的差异。diff命令的输出表示文件有哪些差别,如果要使文件相同,应该采取怎样的动作。由于其输出常常太复杂,以致于diff命令不太实用。我们不详细介绍输出的含义,有兴趣的读者可以用“diff--help”命令来获得详细的说明。2.1.8stat、touch1. stat文件名——显示文件或目录的各种信息例如:[test@redflagtest]$stat/etc/passwdFile: /etc/passwdSize: 1323Blocks:8RegularFileDevice: 301h/769dInode:111261Links:1Access: (0644/-rw-r--r--)Uid:(0/root)Gid:(0/root)Access: ThuFeb2723:18:002003Modify:MonFeb2422:22:282003Change:MonFeb2422:22:282003显示文件passwd的被访问时间、修改时间、变更时间、文件大
本文标题:第2章-Linux常用命令剖析
链接地址:https://www.777doc.com/doc-3173182 .html