Linux简单文件的内容(文本)处理

查看文件内容

  1. head、tail 查看前几行 / 查看后几行(默认10行)
// 查看test.txt文件前3行
[root@localhost ~]# head -3 test.txt
//查看test.txt文件后5行
[root@localhost ~]# tail -5 文件名
  1. cat 文件名列表(可以将多个文件集中显示出来)(-n 加上行号)
// 查看a.txt文件与b.txt文件的内容
[root@localhost ~]# cat  a.txt b.txt
//将a.txt与b.txt文件中的内容合并放入c.txt
[root@localhost ~]# cat a.txt b.txt > c.txt
  1. more文件名可以分页展示

    1. 下一行 enter回车
    2. 下一页 空格
    3. 上一页ctrl+b
    4. 退    出q
  2. less 文件名可以分页显示还可以查询

    1. 可以上下左右键控制。
    2. 查询 /
    3. 退出 q
    4. 显示行号 -N

查找文件中的内容

  1. wc [选项] 文件名统计文件的内容(默认显示出以下三项内容)
    1. 统计行数:-l
    2. 统计单词个数:-w
    3. 统计字节数:-c
// 查询mk.txt文件的单词数  有的不用加 v.
[root@localhost ~]# v.wc –w mk.txt
  1. grep [选项]查找条件文件名
    (查找满足条件的行,以行为单位进行的查找)
    1. 选项:
      -i 忽略大小写
      -v 输出不满足查找条件的语句
    2. 查找条件:
      v.“^…”以什么开头
      vi.“…$”以什么结尾
      “[正则]”包含正则的
// 查询mk.txt文件中有accp2016或accp2017的行
[root@localhost ~]# x.grep –i “201[67]” mk.txt

修改文件内容

将命令展示结果直接导入一个文件。>重定向输出

ls /home >文件名

// 将home文件夹中的所有内容注入到abc.txt文件中
[root@localhost ~]#  ls /home > abc.txt

通道过滤。 | col过滤命令(-b过滤特殊符号)

// 将mkdir的帮助文档过滤掉特殊符号后注入到manmkdir.txt中
[root@localhost ~]#  man mkdir | col -b > manmkdir.txt

//下面这条命令使用了两个管道,利用第一个管道将cat命令(显示abc.txt文件的内容)的输出送给grep命令,grep命令找出含有“/bin /bash”的
//所有行;第二个管道将grep的输出送给wc命令,wc命令统计出输入中的行数。这个命令的功能在于找出系统中有多少个用户使用bash。
[root@localhost ~]#  cat abc.txt | grep /bin/bash | wc -l

vi命令修改文件内容

选项:

  1. -R 以只读形式打开vi –R 文件名
  2. -r 恢复.swp文件vi –r .文件名(当文件异常关闭时出现的.swp缓存隐藏文件)

四个模式图

在这里插入图片描述

  1. 命令模式:

    1. 撤销:
              u 撤销一次
              U 撤销所有

    2. 删除(剪切):
              x 删除一个字母
              dw 删除一个词
              dd 删除整行
              3dd 删除3整行
              4dd 删除4整行

    3. 复制:
              yw 复制一个单词
              y$ 向后复制整行
              y^ 向前复制整行
              yy 复制整行
              3yy 复制3整行
              4yy 复制4整行

    4. 粘贴:
              p 粘贴到光标后
              P 粘贴到光标前

    5. 查询:
              /word 从上向下查
              ?word 从下向上查
              n 定位下一个
              N 定位上一个

  2. 末行模式:

    1. 替换:
              当前一行替换第一个 :s /old/new
              当前一行替换全部 :s /old/new/g
              全文替换全部 :% s/old/new/g
              从第5行到第10行替换全部 :5,10 s/old/new/g
    2. 显示行号:
               :set nu 展示行号
               :set nonu 取消行号
    3. 保存:
              :w 保存
               :w /root/newfile 另存为目录
    4. 退出:
              :q! 未修改并退出
               :wq 保存修改并退出
  3. 输入模式:
    正常输入

  4. 视图模式:

    1. 模式切换:
              v 进入视图模式
              ctrl+v 进入块视图模式

    2. 移动:
              gg 移动到文件最开头
              G 移动到文件最后一行开头
              3G 移动到第三行 4G 移动到第四行
              home键 移动到当行的开头
              end键 移动到当行的结尾

    3. 操作:
              d 删除/剪切
              y 复制

比对两个文件内容

  1. vimdiff 文件1 文件2
    选项:
            -o vimdiff –o 文件1 文件2 竖直两个窗口展示(默认水平两个窗口)
    操作:
            ctrl+ww 切换两个窗口
            【C 选中上一个不同处
            】C 选中下一个不同处
            dp 向右/下覆盖不同处。
            do 向左/上覆盖不同处
            :wqa! 保存全部修改
            :qa! 不保存全部修改
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值