今天,来介绍几个常用文本处理命令和vim文本编辑器

day3--常用文本处理命令和vim文本编辑器

  col,用于过滤控制字符,-b过滤掉所有控制字符,这个命令并不常用,但可以使用man 命令名| col -b >help.txt

导出一份帮助文档。|是管道符,用于把前面的执行结果经由一个“管道”送给后方

man ls | col -b > ls_help                          #把ls命令的帮助文档导出

  cut命令从每一行剪切掉字节,并写至标准输出

cut -b            #以字节为单位进行分割
cut -b "1,3" #输出第一个和第三个字节
cut -c #以字符为单位进行分割
cut -d #定义分隔符,需要和-f一起使用
cut -f #配合-d使用,输出字段
cut -output-delimiter='分隔符' #将分隔符替换为自己的分隔符

  wc统计命令

wc -c        #显示字节数
wc -l #显示行号
wc -w #显示字数

  练习:使用管道符 wc统计命令和cut命令来统计出文件的字符数,并打印到屏幕

  

  echo命令,输出

echo -n             #不换行输出

  head -n,查看文件前n行,默认10行

  tail  -n,查看文件后n行,默认10行

  练习:使用head和tail配合管道符,输出/var/log/message倒数10到15行内容

  cat 查看文件信息

  more 以一页一页的形式显示出文件信息,空格是下一页,b键会往回一页显示

  less,使用less可以随意浏览文件

  sort排序

sort -b         #忽略每行开始的空格字符
sort -c #检查文件是否按照顺序排序
sort -f #将小写字母视为大写字母
sort -o 输出文件 #将结果存入指定文件
sort -r #以相反顺序排序
sort -n      #按照数值大小排序
sort -t分隔符   #指定分隔符

  示例:

   

  uniq 去除重复的行

  示例:(前面的数字表示一共出现了几次)  

  

  当重复的行不相邻时,uniq是不起作用的,于是需要配合sort来使用去除重复的行

  练习:使用uniq,sort来去除不相邻重复的行

  

  tr命令对标准输入的字符进行替换

echo "hello,fissure" | tr 'a-z' 'A-Z'            #将小写转化为大写

 vim文本编辑器

  vim是一个方便的编辑器,对于程序开发,脚本的编写来说是一把利器。

  vim分为三种模式:命令模式,输入模式,底边模式

  最小安装是没有vim这个包的,我们需要安装

sudo apt-get install vim-gtk     #Ubuntu
yum install vim -y #CentOS

  安装成功后,我们输入命令 vim day03.txt

  此时我们就进入了命令模式,此状态下无法输入,可以为vim传递命令,a或i切换到输入模式

  我们在命令模式下敲冒号:,就进入了底边模式,底边模式下q为退出程序,w为保存文件,wq退出程序,以上命令后面加感叹号!代表强制执行

  vim命令模式下常用快捷键

    Ctrl+f   屏幕向下移动一页

    Ctrl+b   屏幕向上移动一页

    home或0  移动到一行最前面的字符

    end或$   移动到这一行最后面的字符

    G    移动到最后一行

    gg    移动到第一行

    数字+G  移动到第几行

    数字    向下移动几行

    /string    查找string字符串

    yy     复制当前行

    dd     删除当前行

    u      复原上一个动作

    p      从下一行开始粘贴

    P      从上一行开始粘贴

    

linux100day(day3)--常用文本处理命令和vim文本编辑器的更多相关文章

  1. Linux文本相关命令

    Linux文本相关命令 目录 Linux文本相关命令 文本排序命令 文本去重命令 基础命令cut 文本三剑客 sed awk grep 文本排序命令 sort 常用参数: -n:以数值大小进行排序 - ...

  2. 97 条 Linux 常用命令及Vim命令总结

    一:Vim编辑模式命令 基本上Vim共分为3种模式,分别是一般模式,编辑模式和命令行模式,这三种模式的作用分别如下简述: 一般模式:默认模式.打开vim直接进入的是一般模式,在这个模式下,可以进行的操 ...

  3. Linux命令行下的vim文本编辑器

    Linux命令行下的vim文本编辑器 下面这个网站的地址讲解的非成分清楚!!!! http://blog.csdn.net/niushuai666/article/details/7275406 学习 ...

  4. 命令工具 -(1)Vim 文本编辑器学习

    关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ 前言 提起 Linux,大家都听说过这句话:Linux 一切皆文件. 配置一个服务就是在修改它 ...

  5. linux学习-常用文本处理命令

    1.文本处理命令 (1) tr 转换或删除字符 tr [OPTION]...SET1 SET2 选项: -c 取SET1字符串的补集 -d 删除属于SET1中的字符 -s 把连续重复出现的字符以单独一 ...

  6. 常用文本处理命令 & 三剑客之 sed

    今日内容 文本处理命令 Linux 三剑客之 sed 内容详细 文本处理命令 1.sort : 文件内容排序 默认按照文件隔行内容的第一个字符大小进行排序(默认是升序) 默认输出文本结果 sort [ ...

  7. ## 本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘

    本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘一,磁盘管理1.显示当前目录位置 pwd2.切换目录 cd ...

  8. (6.2)vim文本编辑器

    vi / vim是Unix / Linux上最常用的文本编辑器而且功能非常强大. vim文本编辑器只有命令,没有菜单.

  9. Linux最常用的基础命令

    Linux最常用的基础命令个人总结 计算机基础知识: 32bit和64bit系统的区别.系统运行机制 32bit=内存的最大寻址空间是2**32,也就是说最大只能使用4GB的内存64bit=内存的最大 ...

随机推荐

  1. Spring MVC源码(一) ----- 启动过程与组件初始化

    SpringMVC作为MVC框架近年来被广泛地使用,其与Mybatis和Spring的组合,也成为许多公司开发web的套装.SpringMVC继承了Spring的优点,对业务代码的非侵入性,配置的便捷 ...

  2. springboot不加载mapper文件问题解析

    1. 场景描述 启动的时候报"springboot available: expected at least 1 bean which qualifies as autowire candi ...

  3. [Haoi2016]字符合并 题解

    tijie 时间限制: 2 Sec  内存限制: 256 MB 题目描述 有一个长度为 n 的 01 串,你可以每次将相邻的 k 个字符合并,得到一个新的字符并获得一定分数.得到的新字 符和分数由这 ...

  4. python通过TimedRotatingFileHandler按时间切割日志

    通过TimedRotatingFileHandler按时间切割日志 线上跑了一个定时脚本,每天生成的日志文件都写在了一个文件中.但是日志信息不可能输出到单一的一个文件中. 原因有二:1.日志文件越来越 ...

  5. 小代学Spring Boot之集成MyBatis

    想要获取更多文章可以访问我的博客 - 代码无止境. 上一篇小代同学在Spring Boot项目中配置了数据源,但是通常来讲我们访问数据库都会通过一个ORM框架,很少会直接使用JDBC来执行数据库操作的 ...

  6. C#3.0新增功能09 LINQ 基础01 语言集成查询

    连载目录    [已更新最新开发文章,点击查看详细] 语言集成查询 (LINQ) 是一系列直接将查询功能集成到 C# 语言的技术统称. 数据查询历来都表示为简单的字符串,没有编译时类型检查或 Inte ...

  7. C++ Primer 第五版 一些遇到的注意点记录。

    第8章 8.2 p283 示例里有一句 ostream *old_tie = cin.tie(nullptr);//old_tie指向当前关联到cin的流 一开始不理解为什么不是无关联,查过tie() ...

  8. Modify column Vs change column

    引言 I know, we can not rename a column using modify column syntax,but can change column syntax. My qu ...

  9. Apache Httpd 启用重定向 rewrite

    1.启用模块 由:#LoadModule rewrite_module modules/mod_rewrite.so 更改为:LoadModule rewrite_module modules/mod ...

  10. Django实现web端tailf日志文件

    这是Django Channels系列文章的第二篇,以web端实现tailf的案例讲解Channels的具体使用以及跟Celery的结合 通过上一篇<Django使用Channels实现WebS ...