文件管理类命令详解

文件管理类命令详解

文件查看

  • cat

    • 功能描述:连接文件并打印到标准输出上
    • 命令格式:cat [OPTION]… [FILE]…

      • OPTION:

        -b 对所有非空白行编号
        -n 给所有输出行编号
        -s 将连续多行空白行显示为一行空白行
        -E 在每一行行尾显示$
        FILE:可显示多个文件,文件之间以空格分隔
    • 举例

      将file1、file2文件中的每行合并后加编号后输出: cat -n file1 file2
  • tac

    • 功能描述:将cat的结果按行倒置输出
  • head

    • 功能描述:输出文件的首部
    • 命令格式:head [OPTION]… [FILE]…

      • OPTION:

        -c # 输出每个文件的前#个字节
        -n # 输出每个文件的前n行
    • 举例

      查看/etc/passwd的前5行内容: head -5 /etc/passwd
  • tail

    • 功能描述:输出文件的尾部
    • 命令格式:tail [OPTION]… [FILE]…

      • OPTION:

        -c # 输出每个文件的后#个字节
        -n # 输出每个文件的后n行
        -f 对于文件中实时新增的行会及时输出
    • 举例

      读取/var/log/messages文件中最新的内容: tail -f /var/log/messages
  • more

    • 功能描述:分屏查看文件内容
    • 命令格式:more [options] file […]

      • options:

        -num 一屏显示的行数
        -p 显示下一屏之前清屏
        -c 清屏然后显示
        -u 不显示下划线
        +/ 先搜索字符串,然后显示
        +num 从第num行开始显示
      • 交互操作:

        h 显示帮助信息
        j 向后一行
        k 向前一行
        f 向前一屏
        b 向后一屏
        d 向后半屏
        u 向前半屏
        /pattern 向后搜索匹配的行
        ?pattern 向前搜索匹配的行
        n 向搜索方向匹配下一个
        N 逆搜索方向匹配下一个
        g 移动到文件的第一行
        G 移动到文件的最后一行
        q 退出less命令
        = 输出当前行号
        :f 输出文件名和当前行号
        v 编辑文件内容
        !<命令> 调用shell,并执行命令
    • 举例

      分屏显示,每屏显示5行,显示下一屏之前清屏: more -p -5 /var/log/messages
  • less:

    • 功能描述:分屏查看文件内容,比more更具灵活性,less可以灵活的实现往前查看,搜索功能更强大,速度更快
    • 命令格式:more [options] file […]

      • options:

        -b<缓冲区大小> 设置缓冲区大小
        -c 清屏然后显示
        -e 文件显示结束后自动离开
        -f 强制打开非普通文件,如目录、二进制文件等
        -g 只高亮显示第一个搜索到的关键字
        -i 忽略搜索时的大小写
        -m 显示类似more命令的百分比
        -n 显示行号
        -o<文件名> 将less显示的结果输出到一个文件中
        -p<pattern> less输出内容的起始位置为第一个匹配pattern的位置
        -s 将连续的空行显示为一行
      • 交互操作:

        h 显示帮助信息
        j/e 向后一行
        k/y 向前一行
        f 向前一屏
        b 向后一屏
        d 向后半屏
        u 向前半屏
        /pattern 向后搜索匹配的行
        ?pattern 向前搜索匹配的行
        n 向搜索方向匹配下一个
        N 逆搜索方向匹配下一个
        g 移动到文件的第一行
        G 移动到文件的最后一行
        q 退出less命令
        = 输出当前行号
        :f 输出文件名和当前行号
        v 编辑文件内容
        !<命令> 调用shell,并执行命令
    • 举例

      搜索跟hadoop相匹配的内容,并在输出时显示行号: less -n -phadoop /var/log/messages
  • stat

    • 功能描述:显示文件及文件系统状态(元数据)
    • 命名格式:stat FILE…
    • 举例

      查看/etc/passwd文件的详细元数据信息:stat /etc/paaswd

文件复制

  • cp

    • 功能描述:复制文件和目录
    • 命名格式:

      • 单个源文件的复制:cp [OPTION]… [-T] SOURCE DEST
      • 多个源文件的复制:cp [OPTION]… SOURCE… DIRECTORY OPTION:

        -i 覆盖之前向用户询问
           -f 强制覆盖
           -r 递归复制
           -d 复制符号链接,而非指向的源文件
           --preserve= 保留元数据信息
               mode 权限
               ownership 属主和属组
               timestamps 时间戳
               context 安全标签
               xattr 扩展属性
               links 符号链接
               all 上述所有属性
    • 举例

      将配置文件server.xml复制为server.xml.bak: cp /usr/local/tomcat/conf/server.xml /usr/local/tomcat/conf/server.xml.bak

文件移动

  • mv

    • 功能描述:移动文件和目录
    • 命名格式:

      • 单个源文件的复制:mv [OPTION]… [-T] SOURCE DEST
      • 多个源文件的复制:mv [OPTION]… SOURCE… DIRECTORY

        • OPTION:

          -b 若需要覆盖,则先备份
          -i 目标文件已存在时,询问是否覆盖
          -f 强制覆盖
    • 举例

      将b目录移动到c目录下: mv /tmp/b /tmp/c

文件删除

  • rm

    • 功能描述:移除文件和目录
    • 命名格式:rm [OPTION]… FILE…

      • OPTION:

        -i 移除前向用户确认
        -f 强制移除
        -r 递归移除
    • 举例

      递归移除/tmp/目录下的文件和目录: rm -rf /tmp/

文件创建和时间戳修改

  • touch

    • 功能描述:修改文件的时间,如access time、modify time、change time
    • 命名格式:touch [OPTION]… FILE…

      • OPTION:

        -a 修改access time
        -c 指定文件路径不存在时不创建
        -m 修改modify time
        -t 设定的时间,格式为[[CC]YY]MMDDhhmm[.ss]
    • 举例

      修改/tmp/njy的modify time时间为2017年6月29日12时30分0秒: touch -m -t 1706291230.00  /tmp/njy

原创文章,作者:N27_xiaoni,如若转载,请注明出处:http://www.178linux.com/79475

(0)
N27_xiaoniN27_xiaoni
上一篇 2017-07-09
下一篇 2017-07-09

相关推荐

  • Linux运维学习历程-第十一天-bash逻辑运算、测试类型和脚本语句

    概述:本篇重点介绍linux当中默认设立了类型,bash的逻辑运算、测试类型和脚本语句,本篇内容极其重要,望小伙伴们在日后的学习中用心学习 一、逻辑运算 变量:   本地变量、环境变量、局部变量、位置参数变量、特殊变量   变量赋值:name=value,export name=value,declare -x nam…

    Linux干货 2016-08-24
  • Linux 发展史

    Linux 发展史 一、Linux 系统概述     首先大家需要明白,Linux 只是内核,没有应用程序,如果想有应用程序就需要GNU 组织来提供应用程序,GNU其实就是一个开源组织,这就要说GNU 和GPL 的概念了,其实GNU可以看作就是软件行业的共产党组织 而GPL 就是共产党宣言 为全人类服务。所以说GNU 和 LIN…

    Linux干货 2016-10-19
  • LVM 逻辑卷管理

    一、概述: LVM: logical Volumn Manager  LVM是建立在硬盘和分区之上的一个逻辑层。可以将多个物理分区整合起来,无需停机,可以对文件系统的大小进行调整。同时,还提供快照功能 二、概念及实现过程: PE :每一个物理卷PV被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的…

    Linux干货 2015-10-05
  • 日志管理

    rsyslogd的相关介绍,journalctl的相关介绍和日志的转储

    2018-02-05
  • 学习试题演练

    1.写一个脚本实现:提示用户给出自己的选择随后显示对应的信息。 区分大小写: if [[ "$option" =~ [Dd][Ii][Ss][Kk] ]];then 2.根据id号来判断用户类型,若没有则提示没有此用户 0:管理员 1-999:系统用户 1000+:登陆用户 不得不提下: bash -n usertype.sh 前期擅用是…

    Linux干货 2016-08-21
  • 马哥教育网络班20期-第五周课程作业

    Table of Contents 1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; 3、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行; 4、添加用户bash, tes…

    Linux干货 2016-07-12

评论列表(1条)

  • 马哥教育
    马哥教育 2017-07-13 17:10

    总结的非常好的,下了功夫的,希望您能牢记这些基础知识,加油!!!