Linux 常用文本处理命令和vim文本编辑器
今天,来介绍几个常用文本处理命令和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 从上一行开始粘贴
总结
以上所述是小编给大家介绍的Linux 常用文本处理命令和vim文本编辑器 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
- 机器人带着VR学习,最后学会了人工智能
- 超经典的JBOSS入门文章
- ASP.NET2.0应用中定制安全凭证
- AI造的AI,比人造的还厉害,该喜还是该忧?
- Mono 3.2 测试NPinyin 中文转换拼音代码
- Reactive Extensions介绍
- Reactive Extensions(Rx) 学习
- 发布一个日期选择控件(ASPNET2.0)
- 做程序员压力山大,很多人都快疯了
- 小程序让交通出行变得如此简化,看看这些微信小程序你有在用了吗?
- 中小企业如何选择DDoS防御方案?
- “熊医生”出诊正确率超九成 医院:人工智能更多是辅助
- PLC编程优化方法,让程序运行提速!
- 这是硅谷狂人马斯克对未来做出的11个大胆预测,人工智能比核武器更危险
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测
- nginx快速入门
- R语言中进行期权定价的Heston模型
- 使用R语言随机波动模型SV处理时间序列中的随机波动率
- 20个ES6面试高频问题
- i++和++i傻傻分不清楚?这里给你最清楚的解答
- android APT 使用
- Flutter异步编程async与await的基本使用
- 教大家一个万能PPT图片排版技巧,太赞了!
- 重复读取 HttpServletRequest 中 InputStream 的方法
- 测试面试题集锦(三)| 计算机网络和数据库篇(附答案)
- 关于Scikit-Learn你(也许)不知道的10件事
- 技术天地 | CSS-in-JS:一个充满争议的技术方案
- 安全研究 | 通过域名劫持实现Azure DevOps账户劫持
- 一款针对DLL劫持的恶意DLL生成器