Linux目录配置
     
 文件种类:
      
  [-]   普通文件     有纯文本文件(regular file)、二进制文件(ASCⅡ)、数据格式文件(data)。
  
  [d]   目录
  
  [l]   连接文件

  [b]   块设备文件
  
  [c]   字符设备文件
  
  [s]   套接字  (sockets)   数据接口文件 , 通常在/var/run目录中可以看见这种文件类型。
  
  [p]   管道 (FIFO, pipe)  first-infirst-out

 Linux 文件扩展名: 
   
        *.sh                                        脚本或脚本批处理文件(scripts)
  
  *Z  *.tar   *.tar.gz    *.zip      *.tgz    经过打包的压缩文件
  
  *.html    *.php                             网页相关文件       
  
 Linux 目录: 
  
  /bin       binary普通用户和管理员都能用的可执行的命令,可执行的命令
  
  /boot      引导文件,系统启动,kernel,bootloader(grub)
  
  /sbin      管理类的文件,通常只有管理员能用
  
  /dev       设备文件所在目录
  
  /etc       配置文件
  
              /etc/sysconfig, 服务额外配置文件,及网络设备相关配置文件

                 /etc/init.d, 服务的管理脚本   
  
  /home      用户的主目录     ~:代表目前这个用户的主文件夹; ~dmtsai:代表dmtsai的主文件夹。
  
  /lib       库文件
  
  /media     可删除的设备,包括软盘、光盘、DVD等设备。   /media/floppy, /media/cdrom
  
  /mnt       暂时挂载某些额外的设备。
  
  /opt       可选的,有些第三方软件,把此目录当作默认安装位置,Nessus, Oracle
  
  /root      管理员root的主文件夹
  
  /tmp       临时文件存放位置
  
  /misc      杂项
  
  /proc      伪,内存中的内核相关信息的映射
  
  /sys       比如像磁盘这样存储设备或某些总线设备的驱动程序相关属性信息
  
  /srv       服务运行中中间文件的存放位置
  
  /var,   经常发生变化的文件存放位置
              
      /var/log
     
               /var/run
    
               /var/mail
    
  /usr    基本日常管理
             
     /usr/bin
              
     /usr/sbi
     
              /usr/etc
    
              /usr/lib
    
              /usr/include    头文件
    
        /usr/local (第三方软件)
  
              /usr/local/bin
    
              /usr/local/sbin
    
              /usr/local/etc
    
              /usr/local/lib
  
  /lost+found       /disk/lost+found  设备文件
  
  /proc             虚拟文件系统  
  
目录与路径
    绝对路径与相对路径
 
     绝对路径:由根目录(/)开始写起的文件名或目录名称,例如:/home/dmtsai/.bashrc。
       
       相对路径:相对于目前路径的文件名写法,例如:./home/dmtsai或../../home/dmtsai等。
  
 .:代表当前的目录,也可以用./来表示。

    ..:代表上一层目录,也可以用../来表示。
 
文件与目录管理

    pwd 显示当前目录
 
    cd  切换目录
 
    ls  查看文件与目录
   
    -a   全部的文件,连同隐藏文件
   
    -d   仅列出目录本身
   
    -l   列出长数据串,包含文件的属性与权限等数据
   
    -i   列出inode号码
   
    -n   列出UID与GID,而非用户与用户组的名称
   
    创建一个空白文件:
 
    # touch
 
       -a 仅修改访问时间
   
       -m 仅修改mtime
   
       -t [[CC]YY]MMDDhhmm.ss
   
       -c 仅修改文件的时间,若文件不存在则不创建新文件

 复制文件:
 
    # cp SRCFILE DEST
 
    # cp SRCFILE...DEST
 
       -a, 相当于-rp。
   
       -f,强制复制。
   
       -i,交互式。
   
       -p,连同属性一起复制。
   
       -r(R),可复制目录。
   
    创建一个新目录:
 
    # mkdir  /tmp/x/y/z
 
       -v  verbose  详细信息
   
       -p  parents  帮助你直接将所需要的目录(包含上层目录)递归创建起来。
   
    删除一个空目录:
 
    # rmdir
 
    文件删除命令:
 
    # rm
 
       -r(R) 递归删除目录中的内容
   
       -f  强制删除
   
       -v 显示删除内容和类型
   
    移动文件或目录:
 
    mv SRCFILE DEST
 
    mv SRCFILE...DEST
 
       -f 强制移动
   
       -u 若目标文件已经存在,且source比较新,才会更新(update)。

文件内容查阅
   
 cat    由第一行开始显示文件内容(显示全部内容)  不能分页显示
 
      -n 显示行号
  
         -E 显示行结束符 --show-ends
  
         -v 显示非打印字符
  
         -T 显示打印字符
 
 tac    从最后一行开始显示,tac是cat的倒写形式
 
 nl     显示的时候,顺便输出行号
 
 more   一页一页地显示文件内容
 
 less   与more类似,但可以往前翻页,可以一行一行地显示
 
 head   只看头几行
 
 tail   只看结尾几行
 
      -f 不退出一直查看文件 ( Ctrl+c 退出   )
 
 od     以二进制的方式读取文件内容
 
 wc     words counter
   
      -l 行数     -w 统计单词数            -c 字符数
  
    cut      切割之后进行排序                              /etc/passwd
 
         cut -d : -f1-7
  
         cut -d : -f1,7
  
         cut -d'' -f1-7
  
    sort 按字母排序显示
 
         -r 逆序显示
  
         -n 以数值大小进行比较
  
         -f
  
         -u 如有相同的行则只显示一次
  
    uniq 排完序才能使用          、、、、与sort一起使用
 
         -u 只显示不重复的行
  
         -d 只显示重复的行(显示一次)
  
         -c 显示重复的次数
  
    # tr  SET1 SET2    转换字符
 
    # tr 'abc' 'ABC' /etc/passwd
 
    # tr -d 'abc'   删除字符

文件与目录的默认权限与隐藏权限
   
 文件默认权限:
 
     umask      0022
  
        uamsk -S   u=rwx,g=rx,o=rx
 
 文件隐藏属性:
       
        chattr

        lsattr
  
命令与文件的查询  

    file      查看文件类型
 
 which     脚本文件名的查询     寻找执行文件
 
  
 文件名的查找:
 
 whereis  寻找特定文件
 
      -b   只找二进制格式的文件
  
   -s   只找soerce源文件
 
 locate    非实时 非精确,快速       依据/var/lib/mlocate内的数据库记载,找出用户输入的关键字文件名
 
 find      实时  精确  速度慢        从磁盘查找
     
    # makewhatis
 
    # whatis

         # locate keyword
  
         # updatedb 手动生成locate所依赖的数据库

               locate -n 10 keyword  查找前十行
     
               locate -c 10 keyword  统计字符

    find [dir1,...] [criteria,...] [action...]
 
    find [-H] [-L] [-P] [path...] [expression]

         find /etc -name "passwd"

         Criteria:
  
              -name ""             严格区分大小写
    
              支持globbing方式的文件名通配
    
                   # find /etc -name "passwd*"
      
                   # find /etc -name "passwd?"
      
                   # find /etc -name "*passwd*"

              -iname "" 不区分文件名中的大小写
    
              -regex "PATTERN"

              -user UID
    
                   # find /tmp -user redhat
      
                   # ls -l `find /tmp -user redhat`  命令替换
      
              -group GID   指定组名
    
              -uid    按uid查找
    
              -gid    按gid查找

              -nouser  查找所有没有属主的文件
    
              -nogrouop查找所有没有属组的文件

              -type (f d l b c s p)  按文件类型查找
         
                        # find /tmp -type s
      
             组合条件:
   
                      # find /tmp -iname "*LC*" -user redhat
                            -a
                            -o
                            -not
                                     # find /tmp -iname "*LC*" [ -a ] -user redhat
         
                                     # find /tmp -not -user redhat
         
                                     # find /tmp -iname "*LC*" -o -user redhat

                                     # find /tmp -not -user redhat -a -not -iname "*LC*"
         
                                     # find /tmp -not \( -user redhat -o -iname "*LC*" )

              -size# 指定文件大小
    
                          10M
       
                         -10M
                    
                         +10M
                              k|M|G

              -atime# 3   三天        -3     +3   访问时间(天)
       
              -mtime                              修改时间(天)
    
              -ctime                              改变时间(天)

              -amin#  3   三分钟     -3     +3    访问时间(分钟)
    
              -mmin                               修改时间(分钟)
    
              -cmin                               改变时间(分钟)

              -perm  根据权限查找
    
                    per 755        每一类用户都必须满足
     
                    per /755 (+755)  任何一类用户权限满足都可以
     
                    per -755      每一类用户有一权限位必须满足

             /mode: 任何一类用户某一个权限符合条件     0 : 不作考察
   
             -mode:所有类别用户所有权限都符合条件
   
    xarges
   
                 # find ./ -perm 644 | xarges chmod 755
    
                  例如:
     
                     1,查看/var目录下属主为root并且属组为mail的所有文件:
     
                       # find /var -user root -group mail
       
                     2,查看/usr/目录下不属于root,bin,或student的文件:
     
                       # find /usr -not -user root -a -not -user bin -a -not -user student
       
                       # find /usr -not \( -user root -o -user bin -o -user student )
       
                       -not    ==     !
       
                     3,查看/etc目录下最近一周内内容被修改过且不属于root及apache用户的文件# find /etc -mtime -7 -a -not \( -user root -o -user apache )
     
                     4,查找当前系统上没有属主或属组且最近一天内曾被访问过的文件,并将其属主属组均修改为root:
     
                       # find / \( -nouser -o -nogroup \) -a -atime -1 -exec chown root:root {} \;
       
                     5,查找/etc目录下大于1M的文件,并将其文件名写入/tmp/etc.largefiles文件 中:
     
                       # find /etc -size +1M -exec basename {} >> /tmp/etc.largefiles \;
       
                     6,查找/etc目录下所有用户都没有写权限的文件,显示其详细信息;
     
                       # ls -l `find /etc -not -perm /222`
       
                       # find /etc -not -perm /222 -ls
       
Man的章节:

     1,用户命令
 
     2,系统调用
 
     3,库调用
 
     4,特殊文件说明
 
     5,文件格式(常指配置文件)
 
     6,游戏
 
     7,杂项
 
     8,管理命令
 
     #whatis command 查看章节
 
     #man 章节号 command
 
     #man 章节号 文件名
 
     #manwhatis
 
     #makewhatis
 
     Man -M/usr/local/apache/man httpd
 
     EXAMPLES举例
 
     Man mdadm
 
    翻屏: space键,往文件尾部翻一屏,或向上翻 -----b
 
       Enter键,往文件尾部翻一行,或向上翻 -----k
   
       G     跳转文件尾部
   
       1G    跳转文件首部
   
    字符串搜索: /keyword 由首部向尾部搜  n 下一个   :  N  下一个(反方向)
 
             /keyword 由尾部向首部搜