文件管理类命令详解

文件管理类命令详解

文件查看

  • 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 19:52
下一篇 2017-07-09 21:58

相关推荐

  • Linux 第九天: 练习和作业

    Linux 第九天: 练习和作业       编写脚本/root/bin/systeminfo.sh 显示当前主机系统信息 包括主机名 ipv4地址 操作系统版本 内核版本 CPU信号 内存大小 硬盘大小 server_ip=`ifconfig|grep'inet\b'|grep -v '…

    Linux干货 2016-08-15
  • N25-第三周作业

    1.列出当前系统所有已经登录的用户的用户名,注意同一个用户登录多次,只显示一次即可   who | cut -d" " -f1 |uniq 2.取出最后登录到当前系统的用户的相关信息    w | tail -1 3.取出当前系统上被用户当做其默认shell最多的那个shell &nbsp…

    Linux干货 2016-12-19
  • Linux任务计划

        任务计划分类:    一次性任务计划:只执行一次就结束                at batch    周期性任务计划:每隔一定的周期去…

    Linux干货 2017-05-08
  • 第一篇博客,以下。

    一、 linux 你好!    学习linux的心情。        又一次接触了linux,内心还是很忐忑的。记得大二学过半学期的linux,那是一门考查课,所以可想而知学的是三天打鱼两天晒网。也不知道是怎样的机缘,让我在一年后又一次遇见了它。我想说,虽然你…

    2017-07-15
  • 马哥教育网络21期+第六周练习博客

    马哥教育网络21期+第六周练习博客 请详细总结vim编辑器的使用并完成以下练习题     VIM编辑器:         vi:Visual Interface 文本编辑器    &nbsp…

    Linux干货 2016-08-05
  • Linux Basics–part3

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ~]# who | cut -d” ” -f1 | sort -u centos ronny root 或 ~]# who | cut -d” ” -f1 | sort |uniq centos ronny root 2…

    Linux干货 2017-08-07

评论列表(1条)

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

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