linux常用的读取文件内容指令
linux常用于读取文件内容指令主要有以下七种: cat,tac,nl,more,less,head,tail
cat 文件名 –将文件内容显示在屏幕上 cat -n 文件名 –将文件内容显示在屏幕上,并显示行号 cat -b 文件名 –将文件内容显示在屏幕上,并显示行号,但是不显示空白行行号
tac则是和cat反过来的(名字都是反过来的) tac 文件名 –将文件内容显示在屏幕上,但是是从最后一行开始往前显示 tac -s separator 文件名 –从separator往后倒序输出,倒序输出不包含separator,输出到最后一行再按照顺序将separator之前的内容输出 tac -b -s separator 文件名 –从separator往后倒序输出,倒序输出包含separator,输出到最后一行再按照顺序将separator之前的内容输出
创建文件readfile.txt,在文件中输入内容
[root@localhost tmp]# cat readfile.txt
one
two three
four five six
seven eghit nine ten
[root@localhost tmp]# tac readfile.txt
seven eghit nine ten
four five six
two three
One
tac和cat显示的顺序是相反的
[root@localhost tmp]# tac -s "six" readfile.txt
seven eghit nine ten
one
two three
four five six
[root@localhost tmp]# tac -b -s "six" readfile.txt
six
seven eghit nine ten
one
two three
four five
nl 文件名 (就是nl -b t 文件名) 使用nl指令肯定是显示行号的,主要是操作行号如何显示 nl -b a 文件名 –显示行号,空行也显示行号 nl -b t 文件名 –显示行号,空行不显示行号(默认值) nl -w 数字x 文件名 –行号字段所占用的位数 nl -n ln 文件名 –行号在字段最前方那段空间最左端显示 nl -n rn 文件名 –行号在字段最前方那段空间最右端端显示,且不加0 nl -n rz 文件名 –行号在字段最前方那段空间最右端端显示,且加0 行号占四位
[root@localhost tmp]# nl -w 4 readfile.txt
1 one
2 two three
3 four five six
4 seven eghit nine ten
行号前自动补全0
[root@localhost tmp]# nl -n rz -w 4 readfile.txt
0001 one
0002 two three
0003 four five six
0004 seven eghit nine ten
行号在最左端显示
[root@localhost tmp]# nl -n ln -w 4 readfile.txt
1 one
2 two three
3 four five six
4 seven eghit nine ten
可以执行翻页操作的读取文件内容指令 more 文件名 空格:向下翻页 Enter:向下换一行 /字符串: 查找文件内容 q: 离开more,不再显示内容 b: 往回翻页
less 文件名 空格:向下翻页 Pageup: 向上翻页 Pagedown: 向下翻页 /字符串: 向下搜索 ?字符串: 向上搜索 n: 重复前一个搜索 N: 反向重复前一个搜索 q: 离开less
haed 文件名 –显示文件头十行 head -n x 文件名 –显示文件头x行,如果x为负数,则显示除最后x行外的前面所有行
tail文件名 –显示文件头十行 tail -n x 文件名 –显示文件头x行,如果x前面有+号,则显示除前面x-1行外的所有行
如果想要看第十一行到第二十行,可以结合管道流来实现 两种方式 先获取头二十行,再获取最后十行
[root@localhost tmp]# head -n 20 man_db.conf | tail -n 10
# --------------------------------------------------------
# MANDATORY_MANPATH manpath_element
# MANPATH_MAP path_element manpath_element
# MANDB_MAP global_manpath [relative_catpath]
#---------------------------------------------------------
# every automatically generated MANPATH includes these fields
#
#MANDATORY_MANPATH /usr/src/pvm3/man
#
MANDATORY_MANPATH /usr/man
先获取除头十行外的所有行,再获取头十行
[root@localhost tmp]# tail -n +11 man_db.conf | head -n 10
# --------------------------------------------------------
# MANDATORY_MANPATH manpath_element
# MANPATH_MAP path_element manpath_element
# MANDB_MAP global_manpath [relative_catpath]
#---------------------------------------------------------
# every automatically generated MANPATH includes these fields
#
#MANDATORY_MANPATH /usr/src/pvm3/man
#
MANDATORY_MANPATH /usr/man
- 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 数组属性和方法
- matplotlib实现一页多图
- 用matplotlib实现画中画
- 为matplotlib设置不同的主题
- 模式利器 | MEIC污染源清单向WRF-Chem模式网格插值分配工具——meic2wrf
- Windows给力!可以扔掉Linux虚拟机了!
- 好慌,Redis这么多集群方案,要用哪种?
- 你真的了解MySQL 8.0 数据字典吗?
- 《调教命令行09》磁盘很廉价,放小电影最合适了
- 既保护隐私又快速训练,Facebook开源Opacus库,利用差分隐私训练PyTorch模型
- 为什么Java中1000==1000为false而100==100为true?
- Java自动化测试 (元素定位 23)
- Java自动化测试(webdriver常用API 24)
- Java自动化测试(特殊元素处理 25)
- 那些Vue开发遇到的坑---响应式系统
- 基于Ansible和Devops的一键测试环境部署实践