linu-3 文件、目录的基本操作

1、查看文本文件内容

  cat 命令:短文件

  less 命令:长文件

    k  ----向上一行

    j  ----向下一行

    Page up  ----向上一页

    Page down  ----向下一页

    q  ----退出

2、 查看文件属性、目录内容

  ls 命令

    不带任何参数:查看当前目录的内容

    参数为目录:列出指定目录的内容

    加参数: -R 包括所有子目录的内容

    加参数: -l  列模式列出详细信息

3、通配符

  

4、创建文件、目录

  1)创建文件、目录 Vi、touch 

  2)创建目录 mkdir

    可以使用绝对路径和相对路径

    mkdir dir1

    mkdir dir1 dir2 dir3

    mkdir -p /dir1/dir2/dir3

  3)复制文件、目录

    复制文件: cp

        源和目的地址,都可以是绝对路径或相对路径

     cp f1 f2  (当前目录复制)

     cp f1 /home/ych  (目标是目录、产生同名文件)

     cp f1 /home/ych/f2  (目标是文件,可以改名)

     cp f1 f2 /home/ych   (源可以是多个文件)

     如果f2 已经存在,会被覆盖,除非 加上 -i  ,要求提示

    复制目录:

     cp d1 d2 -r

     cp f1 d1 /home/ych/d2 -r (源可以是多个文件或目录)

       -u  参数(增量备份)

      仅复制 目标目录中不存在的文件,或者是文件内容新于目标目录中已存在的文件

5、移动、重命名文件和目录

    重命名文件、目录  -----源地址和目的地址相同就是重命名

    比如:

      mv  f1  f2

      mv d1  d2

      mv d1/f1  d1/f2

      移动文件、目录  - 源地址和目的地址不同

    比如:

      mv f1 d1 /   移动f1  到 d1

      mv f1 d1/f2   移动且重命名

      mv f1 f2 d1 d2  移动多个文件到d2

      mv d1 d2   如果d2 不存在,重命名目录;如果d2存在,移动目录

6、删除文件和目录

   重命名文件、目录  -----源地址和目的地址相同

   比如:

    rm f1  删除一个文件

    rm f1 f2  删除多个文件

    rm d1 -r 删除目录

    rm d1 d2 f1 -rf  删除目录和文件,如果其中有不存在的,也继续进行

    rm * -rf   删除当前目录下所有的文件和目录(需小心)

 7、find 命令

  find命令会在指定目录及其子目录下查找符合条件的特定文件。当我们忘了文件的位置,可以使用该命令

  命令格式:find 目录名 条件

  常见条件:

  -name name 指定要被寻找的文件或目录名称,可用通配符

  -type x  以文件类型作为寻找条件。文件类型x如下:d -----目录(directory)   f ------文件(file)

  例如:

  find /temp -name ‘abc’

  find /temp -name ‘abc*’

  find /temp -name ‘abc*’ -type f

8、 diff 命令

  用在文件大致相同的情况下

  命令格式: diff -y 文件名1 文件名2

  输出解释

   |   显示每个文件不同的行

  <  显示左边文件比右边多出来的行

  >  显示右边文件比左边多出来的行  

9、grep 命令

  一种强大的文本搜索工具,并把匹配的行打印出来

  啥时候用?

    -----查看日志

    -----查看命令输出

  grep root /var/log/messages (在messages中包含root的行)

  大小写敏感

  支持正则表达式搜索文本

  grep 命令-----例子

  grep ‘test 123’ d*   通配符--------显示所有以d开头的文件中包含’test 123‘ 的行

  grep ‘test’ aa bb cc  多个文件-------显示在aa,bb,cc文件中匹配test的行

  grep root -r /var/log  目录中递归搜索------在/var/log所有子目录子文件中搜索包含字符串“root”的行

  grep ‘^test’ /var/log/scp.log  正则表达式 -------在scp.log 中以字符串‘test’文件

  grep 命令常用参数

  -c :只输出匹配行的计数

  -i:不区分大小写

  -h:查询多文件时不显示文件名

  -n:显示匹配行及行号

  -v:显示不包含匹配文本的所有行

  -F:指明pattern非正则表达式

  -A<n>:同时显示该行之后n行的内容

    -B<n>:同时显示该行之前n行的内容

  grep:文本过滤器,如果仅仅是过滤文本,可使用grep,效率高

8、sed 和awk 

  不止搜索,而且除了(增加、删除、改动)

  例如:

  ps | sed ‘1d’ ----不显示第一行

  ps | sed ‘s/bash/mygod’ ----不显示第一行

  ps | awk ‘’{print $1,$4} ------只显示第1列,第4列的内容

9、文件内容统计(WC)

  wc -l  /etc/passwd-----统计/etc/passwd 文件有多少行

  wc -c /etc/passwd-----统计/etc/passwd 文件有多少个字节

  带着管道符: ps -ef | wc -l

10、查看目录使用空间(du)

  du 命令是查看文件和目录的磁盘使用空间

  df 命令是查看文件系统使用空间的

  例如:

    du -sh 文件名---- 显示指定目录整体磁盘占用率

    du -ah 文件名----显示指定目录及其所有子目录和文件的磁盘占用率

     

    

    

原文地址:https://www.cnblogs.com/feihan/p/14100164.html