首页 > 代码库 > 文件、目录——Linux基本命令(5)

文件、目录——Linux基本命令(5)

1. 文件名规则

1)文件名最长255个字节技术分享

2)包括路径在内文件名称最长4095个字节

3)文件颜色

         蓝色à目录

         绿色à可执行文件

         红色à压缩文件

         浅蓝色à链接文件

         灰色à其他文件

技术分享

4)除了斜杠和NUL(就是空格键),所有字符都有效。但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们。


 

2.文件系统结构

    /boot:引导文件存放目录,内核文件、引导加载器都存放于此目录

    /bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序

    /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序

    /lib:启动时程序依赖的基本共享库文件以及内核模块文件

    /lib64:专用于*86_64系统上的辅助共享库文件存放位置

    /etc:配置文件目录

技术分享

    /home/USERNAME:普通用户家目录

    /root:管理员的家目录

    /media:便携式移动设备挂载点

    /mnt:临时文件系统挂载点

    /dev:设备文件及特殊文件存储位置

技术分享

      bblock device随机访问

      ccharacterdevice 线性访问

   /opt:第三方应用程序的安装位置

   /srv:系统上运行的服务用到的数据

   /tmp:临时文件存储位置

   /usruniversalsharedread-only data 只读文件

   /var:variable data files 可写文件

      cache:应用程序缓存数据目录

      lib:应用程序状态信息数据

      local:专用于为/user/local下的应用程序存储可变数据

      lock:锁文件

      log:日志目录及文件

      opt:专用于为/opt下的应用程序存储可变数据

      run:运行中的进程相关数据,通常用于存储进程pid文件

      spool:应用程序数据池

      tmp:保存系统两次重启之间产生的临时数据

      /proc:用于输出内核与进程信息相关的虚拟文件系统

      /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统

          echo’- - -’ > /sys/class/scsi_host/host2/scan

          Vmware加硬盘重新扫描

      /selinuxsecurityenhanced Linux,selinux相关的安全策略等信息的存储位置




3. Linux上的应用程序的组成部分

技术分享




4. Linux下的文件类型

技术分享



5. 绝对路径和相对路径

   绝对路径:

     以正斜杠开始(从根开始)

     完整的文件的位置路径

     可用于任何向指定的一个文件名的时候

   相对路径名:

     不以斜线开始

     指定相对与当前工作目录或某目录的位置

     可以作为一个简短的形式指定一个文件名

   基名:basename

   目录名:dirname

 


6. 更改目录

cd改变目录

使用绝对或相对路径:

   cd /home/wang/

   cd home/wang

切换至父目录(上级目录):cd ..

切换至当前用户的主目录:cd

切换至以前的工作目录:cd -

技术分享

选项: -P

相关的环境变量:

   PWD:当前目录路径

   OLDPWD:上一次目录路径




7. 列出目录内容

  ls列出当前目录的内容或指定目录

 用法:ls[options] [files_or_dirs]

 示例:

      ls-a 显示所有文件

      ls-A 显示所有文件,除...文件

      ls-l 长列出

   -rw-r--r--.1 root root 2193 Jul 14 17:28 passwd

  文件类型|owner权限group权限other权限|硬链接数|owner|group|文件大小(bytes)|mtime|文件名

技术分享


ls-R 递归(即如果文件夹里有文件可以被展开列出来)

技术分享


   ls-ld 显示指定目录的详细信息。

  ls-1 竖显示

技术分享

   ls -S 按文件大小降序排列

    ls-t 按修改时间(mtime)从新到旧排列

    ls-ut 按访问时间(atime) 从新到旧排列

    ls-U 按文件存放的先后顺序

    ls-X 按文件后缀排序

    ls-i 显示文件的inode

    ls-Z 显示文件的context




8. 时间戳

 statfilename查看文件信息技术分享

 atime 访问时间

 mtime 文件数据修改时间

 ctime 文件元数据修改时间

PS:元数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息(inode...)等等。)

 

touchfilename当文件不存在时,则创建一个空文件,名为filename

       当文件已存在时,则更新期时间戳                             

          -a 仅更新atimectime

             -m 仅更新mtime, ctime

         touch filename 更新全部时间戳。

 


 

9. 复制文件和目录

 cp SRC DEST

 源 目的地

 规则:

技术分享

如果目标目录下还有一个目录与源文件同名,则无法复制:

技术分享

    -i 覆盖前提示

    -n不覆盖

    -r-R 递归 (复制文件夹目录及文件夹内部的所有内容)

    -d复制软链接属性

    -p= --perserv=mode,owner,timestamp

    -a包含-dr --perserv=all

    -f当覆盖时,如目的文件的缺少写权限时,强制删除目的文件,并新建再填充内容。当有-n时,无效

    -v可以讲进度过程显示出来

技术分享

PS:我们在复制文件或文件夹的时候一般都需要加上 -a



 

10. 移动

mv

    -i 覆盖前提示

    -f 什么都不提示,强制覆盖,抵消-i的作用

    批量改名 rename ‘.txt‘ ‘.doc‘ *.txt (先写将什么格式改为什么格式,再写改哪些文件)

技术分享

   用这种方式将所有txt结尾的文件改为doc结尾的文件



11. 删除

rm

    -i 覆盖前提示

    -f 不提示,强制覆盖,抵消-i的作用

    -r 递归

   PSrm -rf *删除当前目录下的所有文件,这个命令很危险。删除的文件一般都不能恢复!不要随便尝试。)



12. 目录

1)创建目录

mkdir创建目录

     -p递归创建(就是可以一次创建多级目录)

技术分享

    -mmode 创建时指定权限

2)删除空目录

rmdir删除空目录

     -p递归删除空目录

技术分享



13. 创建文件或修改文件时间

touch

  当文件不存在时,则默认创建一个空文件

    -c 当文件不存在时,不创建

技术分享

  当文件存在时,

    默认或-c 更新全部时间戳

     -a更新atimectime

     -m更新mtimectime

     -t  [[CC]YY]MMDDhhmm[.ss] 指定atimemtime的时间戳

技术分享

如图,修改时间戳



14. 文件通配符

*匹配零个或多个字符

?匹配任何单个字符

~ 当前用户家目录

~mage用户mage家目录

~+当前工作目录

~-前一个工作目录

[]代表括号之间的范围,比如[0-9]可以代表0-9之间的任意一个数字,[a-z]可以代表a-z之间的任意一个字母,字母区分大小写。

[0-9] 匹配数字范围

(使用touch创建文件时,使用{}引用范围)

技术分享


[a-z] 字母

技术分享

ps:字母是按照先小写再大写的顺序排列的,如:aAbBcCdDeE

 

[xyz] 匹配列表中的任何的带xyz的一个字符

技术分享

如图,分别匹配以adh开头的所有文件,和以hzi开头的所有文件

 

[^xyz] 匹配列表中的所有字符以外的字符

技术分享

如图,匹配除了以adh开头的所有文件,和除了以hzi开头的所有文件

[:digit:] 任意数字,相当于0-9 

[:lower:] 任意小写字母

[:upper:] 任意大写字母

[:alpha:] 任意大小写字母

[:alnum:] 任意数字或字母

[:blank:] 水平空白字符

[:space:] 水平或垂直空白字符

[:punct:] 标点符号

[:print:] 可打印字符

[:cntrl:] 控制(非打印)字符

[:graph:] 图形字符

[:xdigit:] 十六进制字符

技术分享

(注意:以上使用时都应注意需加两个[],因为其本身就带一个[]

本文出自 “Ty_endless” 博客,请务必保留此出处http://tyendless.blog.51cto.com/12435756/1951568

文件、目录——Linux基本命令(5)