LINUX操作系统(Linux 诞生的发展:虚拟团队)2

Linux 诞生的发展:虚拟团队

强大的通信和联网功能:支持种类繁多的连接设备(如网卡),支持上层网络协议,提供强大的网络服务(如FTP,MAIL等)。 应用程序支持:包括编译器,数据库,办公软件,游戏等

文件和目录操作命令

pwd、cd    

1.  pwd——显示(打印)用户当前所处的目录         这是再常用不过的命令了,如果不知道自己当前所处的目录,就必须使用它。这个命令和DOS下的不带任何参数的cd命令的作用是一样的。其用法如下:[test @redflag test]$pwd        /home/test 说明当前目录是/home/test。

cd目录名——改变当前所处的目录或处理绝对目录和相对目录          如果用户当前处于/bin目录,想进入/etc目录,可以键入:                [test @redflag /bin]$cd /etc

is、tree

       1.  ls [参数] 路径或文件名——列出文件或子目录的信息        参数选项:         -a:显示所有的文件,包括以“.”开头的文件(即隐含文件)。         -l:以长格式显示文件或子目录的信息。         -i:显示每个文件的索引(节点)号。 执行命令[test @redflag test]$ls -a 显示当前目录下的所有文件,输出:        bak chap1.txt Desktop txt            Linux系统用颜色来区分文件类别。缺省时,蓝色代表目录,绿色代表可执行文件,红色代表压缩文件,浅蓝色代表链接文件,灰色代表其他文件。

tree 目录名——以树的形式显示指定目录下的内容        [test @redflag test]$tree          这是不带任何参数的tree命令,以树的形式显示当前目录下的文件和子目录,会递归到各子目录。例如:       [test @redflag test]$tree /etc/rc.d 以树的形式显示目录/etc/rc.d下的文件和子目录。

 mkdir、rmdir

        1. mkdir [参数] 目录名——建立目录         目录可以是绝对路径,也可以是相对路径。          参数选项:          -p:建立目录时,如果父目录不存在,则此时可以与子目录一起建立。

例如: [test @redflag test]$mkdir dir1  在当前目录下建立dir1目录。 [test @redflag test]$mkdir -p dir2/bak   在dir2目录下建立bak目录,如果dir2目录不存在,那么同时建立dir2目录。

rmdir [参数] 目录名——删除目录 目录同样可以是绝对路径,也可以是相对路径。 参数选项: -p:一起删除父目录时,父目录下应无其他目录。 例如: [root @redflag /root]#rmdir test 删除当前目录下的test目录。删除目录时,被删除的目录下应无文件或目录存在。        [root @redflag /root]#rmdir -p longkey/test          删除当前目录下的longkey/test目录。删除目录test时,如果父目录longkey下无其他内容,则一起删除longkey目录。

cp、rm、mv、ln  

     1.  cp [参数] 源文件 目标文件——拷贝文件或目录 相当于DOS下的copy命令。          参数选项:          -f:如果目标文件或目录存在,先删除它们再拷贝(即覆盖),并且不提示用户。  -i:如果目标文件或目录存在,提示是否覆盖已有的文件。 -R:递归复制目录,即包含目录下的各级子目录。 rm [参数] 文件名或目录名——删除文件或目录 相当于DOS下的del命令。 参数选项: -f:删除文件或目录时不提示用户。 -i:删除文件或目录时提示用户。 -R:递归删除目录,即包含目录下的文件和各级子目录。

例如: [test @redflag test]$rm *  删除当前目录下的所有文件,但子目录和以“.”开头的文件(即隐含文件)不删除。 [test @redflag test]$rm –iR bak  删除当前目录下的子目录bak,包含其下的所有文件和子目录,并且提示用户确认。

mv [参数] 源文件或目录 目标文件或目录——移动文件或目录         相当于DOS下的move命令。 参数选项:          -i:如果目标文件或目录存在时,提示是否覆盖目标文件或目录。          -f:不论目标文件或目录是否存在,均不提示是否覆盖目标文件或目录。          值得注意的是,mv可以用来更改文件名或目录名。 例如: [test @redflag test]$mv 1.txt 2.txt 这里移动文件时并不改变文件的目录,如果2.txt原来不存在,则实际上是1.txt更名为2.txt。 [test @redflag test]$mv ~/txtbak  /bak 把个人主目录下的目录txtbak移动到/bak目录下。

ln [参数] 源文件或目录 链接名——建立链接 参数选项:          -s:建立符号链接(即软链接),不加该项时建立的是硬链接。          例如: [test @redflag test]$ln telno.txt telno2.txt 给源文件telno.txt建立一个硬链接telno2.txt,这时telno2.txt可以看作是telno.txt的别名,它和telno.txt不分主次。telno.txt和telno2.txt实际上都指向硬盘上的相同位置,使用telno.txt作为文件名所做的更改,会在telno2.txt得到反映。硬链接有局限性,不能建立目录的硬链接。

 chmod、chown、chgrp  

       1.  chmod 模式 文件或目录名——改变文件或目录的访问权限              Linux系统是个多用户系统,应该能做到不同的用户能同时访问不同的文件,因此一定要有文件权限控制机制。Linux系统的权限控制机制和Windows的权限控制机制有着很大的差别。Linux的文件或目录都被一个用户拥有时,这个用户称为文件的拥有者(或所有者),同时文件还被指定的用户组所拥有,这个用户组称为文件所属组。

要说明的是,一个用户可以是不同组的成员,这可以由管理员控制,我们将在用户管理这一章介绍如何控制的问题。文件的权限由权限标志来决定,权限标志决定了文件的拥有者、文件的所属组、其他用户对文件访问的能力。可以使用“ls –l”命令来显示权限标志。例如: [test @redflag test]$ls -l -rw-rw-r-- 1 longkey root 16 20A 24 22:23 chap1.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——执行权限;

最后要指明是增加(+)还是减少(-)权限,或是绝对权限(=)。

[root @redflag /root]#chmod o+w chap1.txt  

chap1.txt的权限由原来的“rw-rw-r--”变为“rw-rw-rw-”,表示增加其他用户对文件的写权限。

[root @redflag /root]#chmod u=rw,g=rw,o=r chap1.txt          chap1.txt的权限变为“rwxrw-r---”,不论原来的权限是什么,这表示拥有者对文件有读、写的权限,所属组的用户对文件也有读、写的权限,而其他用户只有读的权限 我们在以上设置权限时,用字符表示权限和用户,实际上我们也经常使用八进制来表示。读、写、执行依次各自对应一个二进制位“???”,如果某位为“0”,则表示无权限;如果某位为“1”,则表示有权限。例如:文件权限为r---w---x时,用二进制表示为100010001,用八进制可以表示为421。例如:          [root @redflag /root]#chmod 664 chap1.txt  等同于:   [root @redflag /root]#chmod u=rw,g=rw,o=r chap1.txt

 chown 用户名 文件或目录名——改变文件(或目录)的拥有者或所属组        例如:      [root @redflag /root]#chown longkey chap1.txt 把文件chap1.txt的拥有者改为longkey用户。      [root @redflag /root]#chown longkey:root chap1.txt 把文件的拥有者改为longkey用户,同时文件的所属组改为root组。

chgrp组 文件或目录——改变文件或目录的所属组          chown可以同时改变文件拥有者和所属者,chgrp只具有改变所属组的功能。例如:         [root @redflag /root]#chgrp root chap1.txt             文件chap1.txt的所属组设为root组。

find、grep        

      1. find 路径 匹配表达式——查找文件所在的目录             路径可以是多个路径,路径之间用空格隔开。查找时,会递归到子目录。             匹配表达式: -name:指明要查找的文件名,支持通配符“*”和“?”。 -user username:查找文件的拥有者为username的文件。 -group grpname:查找文件的所属组为grpname的文件。 例如: [root @redflag /root]#find / -name passwd -print 从根目录起查找名为passwd的文件,并把结果输出到标准设备。 [root @redflag /root]#find /home  /etc -user longkey -print 在目录/home和目录/etc中查找longkey用户所拥有的文件

stat、touch      

        1.  stat 文件名——显示文件或目录的各种信息  

    例如:   [test @redflag test]$stat /etc/passwd   File: "/etc/passwd"   Size: 1323                 Blocks: 8            Regular File Device: 301h/769d          Inode: 111261     Links: 1

Access: (0644/-rw-r--r--)     Uid: (       0/     root)   Gid: (    0/    root) Access:  Thu    Feb    27    23:18:00 2003 Modify: Mon    Feb    24    22:22:28 2003 Change: Mon    Feb    24    22:22:28 2003

显示文件passwd的被访问时间、修改时间、变更时间、文件大小、文件所有者、所属组、文件权限等项内容

 touch [参数] 文件或目录名——修改文件的存取和修改时间          参数选项:

-d yyyymmdd:把文件的存取/修改时间改为yyyymmdd。

-a:只把文件的存取时间改为当前时间。

-m:只把文件的修改时间改为当前时间。    

 例如:       [test @redflag test]$touch *      

   把当前目录下的所有文件的存取和修改时间改为当前系统的时间。  

 [test @redflag test]$touch -d 20030224 chap1.txt 把文件chap1.txt的存取和修改时间改为2003年2月24日。

     [test @redflag test]$touch test.txt

把test.txt的存取和修改时间改为当前系统的时间,如果test.txt文件不存在,则生成一个空文件(即0字节的文件)。             touch还有另外一种形式:          touch MMDDhhmm[YY] 文件名          例如:       [test @redflag test]$touch 0102120099 chap1.txt          把chap1.txt文件的存取和修改时间改为1999年01月02日12:00 。

   2.2.1  cat、more、less  

   1.  cat 文件名1 文件名2  …… ——显示文件的内容   相当于DOS下的type命令。        例如: [test @redflag test]$cat chap1.txt chap2.txt 把文件chap1.txt、chap2.txt在标准的输出设备(通常是显示器)上显示出来。

2.  more 文件名——逐页显示文件中的内容  

       如果文件太长,用cat命令只能看到文件的最后一页,而用more命令时可以一页一页地显示。执行more命令后,进入more状态,用【Enter】键可以向后移动一行;用【Space】键可以向后移动一页;用“q”键可以退出。在more状态下还有许多功能,可用man more命令获得。

          3.  less 文件名——逐页显示文件中的内容  

        less实际上是more的改进版,其命令的直接含义是more的反义。less的功能比more更灵活。例如:用【Pgup】键可以向前移动一页,用【Pgdn】键可以向后移动一页,用向上光标键可以向前移动一行,用向下光标键可以向后移动一行。“q”键、【Enter】键、【Space】键的功能和more类似。

2.2.2  head、tail

1.  head [参数] 文件名——显示文件的前几行

参数选项:

     -n num:显示文件的前num行。

     -c num:显示文件的前num个字符。

缺省时,head显示文件的前10行。

例如: [test @redflag test]$head -n 20 chap1.txt 显示文件chap1.txt的前20行。

2.  tail [参数] 文件名——显示文件的末尾几行

参数选项:

     -n num:显示文件的末尾num行。

     -c num:显示文件的末尾num个字符。 tail命令和head命令相反,它显示文件的末尾。缺省时,tail命令显示文件的末尾10行。

例如: [test @redflag test]$tail -n 20 chap1.txt 显示文件chap1.txt的末尾20行。

    2.2.3  sort、uniq  

       1. sort [参数] 文件列表——将文件中的内容排序输出         参数选项:              -r:反向排序。              -o filename:把排序的结果输出到文件filename。 如果文件a.txt的内容为

b c a d a 则执行sort a.txt命令后的显示结果为 a a b c d

例如: [test @redflag test]$sort -o c.txt a.txt 把a.txt文件的内容排序,并输出到文件c.txt。 [test @redflag test]$sort a.txt b.txt c.txt 把文件a.txt、b.txt、c.txt的内容联合排序输出。

2.  uniq 文件名——比较相邻的行,显示不重复的行 如b.txt文件的内容为 b c c a d a

则执行uniq b.tx命令后的显示结果为 b c a d a

2.2.4  file、locate、which

1.  file 文件名或目录——显示文件或目录的类型 例如: [root @redflag /root]#file /etc/passwd 则可能输出: /etc/passwd:ASCII text 说明passwd是个ASCII文本文件。

2. locate 字符串——查找绝对路径中包含指定字符串的文件

例如: [test @redflag test]$locate chap1 则可能输出: /etc/longkey/chap1.txt /usr/share/doc/qt-devel-2.3.0/html/designer/chap10_1.html /usr/share/doc/qt-devel-2.3.0/html/designer/chap1_1.html /home/longkey/chap1.txt /root/home/longkey/chap1.txt

3. which 命令——确定程序的具体位置 例如: [test @redflag test]$which find 则输出find命令所处的位置: /usr/bin/find

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值