Linux 基本命令(七)--cat,less,more,head,tail,nl 常用命令
2019-07-30
cat,less,more,head,tail,nl 命令基本使用
cat 由第一行开始显示内容,并将所有内容输出
tac 从最后一行倒序显示内容,并将所有内容输出(除不能像cat一样创建文件外,其余用法基本一致)
参数
-A, --show-all 等于-vET -b, --number-nonblank 对非空输出行编号 -e 等于-vE -E, --show-ends 在每行结束处显示"$" -n, --number 对所有行编号,包括空行 -s, --squeeze-blank 压缩多行空行为一空行 -t 与-vT 等价 -T, --show-tabs 将跳格(TAB)字符显示为^I -u (被忽略) -v, --show-nonprinting 使用^ 和M- 引用,除了LFD和 TAB 之外 --help 显示此帮助信息并退出 --version 显示版本信息并退出
cat file #打印文件的内容到当前终端上
[root@localhost opt]# ls test10 test12 test2 test4 test8 test9 [root@localhost opt]# cat test2 admkalsmklamkl asdlpasld;a,l asdmaslas,l
cat file -n #打印显示 行号 的内容到终端
[root@localhost opt]# cat test2 -n1 admkalsmklamkl2 asdlpasld;a,l3 asdmaslas,l
cat file1 file2 #拼接两个文件的内容显示到终端
[root@localhost opt]# cat test2 test4 admkalsmklamkl asdlpasld;a,l asdmaslas,l 3452345 324532 32453245 35325235 3523453 325235324523
cat file1 file2 > file3 #将拼接输出的内容输入到file3内
[root@localhost opt]# cat test2 test4 > test3 [root@localhost opt]# cat test3 admkalsmklamkl asdlpasld;a,l asdmaslas,l 3452345 324532 32453245 35325235 3523453 325235324523
cat > file
使用cat命令创建一个文件 名为file
输入 cat > file , 然后输入我们想要输入的文本,输入完成可以按ctrl+C退出
[root@localhost opt]# cat > test1 67 iy dgfd ^C [root@localhost opt]# cat test1 67 iy dgfd
注意:假如在dgfd一行按^C退出,此行将不会写入到文件内
less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。
1.命令格式:
less [参数] 文件
2.命令功能:
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
3.命令参数:
-b <缓冲区大小> 设置缓冲区的大小
-e 当文件显示结束后,自动离开
-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-g 只标志最后搜索的关键词
-i 忽略搜索时的大小写
-m 显示类似more命令的百分比
-N 显示每行的行号
-o <文件名> 将less 输出的内容在指定文件中保存起来
-Q 不使用警告音
-s 显示连续空行为一行
-S 行过长时间将超出部分舍弃
-x <数字> 将“tab”键显示为规定的数字空格
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
b 向后翻一页
d 向后翻半页
h 显示帮助界面
Q 退出less 命令
u 向前滚动半页
y 向前滚动一行
空格键 滚动一行
回车键 滚动一页
[pagedown]: 向下翻动一页
[pageup]: 向上翻动一页
4.使用实例:
实例1:查看文件
命令:
less log2013.log
输出:
实例2:ps查看进程信息并通过less分页显示
命令:
ps -ef |less
输出:
实例3:查看命令历史使用记录并通过less分页显示
命令:
history | less
输出:
[root@localhost test]# history | less22 scp -r tomcat6.0.32 root@192.168.120.203:/opt/soft23 cd ..24 scp -r web root@192.168.120.203:/opt/25 cd soft26 ls27 scp -r jdk1.6.0_16/ root@192.168.120.203:/opt/soft28 clear29 vim /etc/profile30 vim /etc/profile31 cd tomcat6.0.32/bin/32 ls33 ./shutdown.sh34 ./startup.sh35 vim startup.sh36 ls37 echo $JAVA_HOME38 java39 ls40 ls41 clear42 cd /opt43 ls44 cp apache-tomcat-6.0.32.tar.gz soft/45 ls46 rm -f apache-tomcat-6.0.32.tar.gz 47 ls48 cd soft49 ls50 tar -vzf apache-tomcat-6.0.32.tar.gz 51 tar -vzfx apache-tomcat-6.0.32.tar.gz 52 tar -zxvf apache-tomcat-6.0.32.tar.gz 53 ls54 cd apache-tomcat-6.0.3255 ls56 cd ..57 mv apache-tomcat-6.0.32 tomcat6.0.3258 ls59 cd tomcat6.0.32/60 ls
实例5:浏览多个文件
命令:
Less log2013.log log2014.log
输出:
说明:
输入 :n后,切换到 log2014.log
输入 :p 后,切换到log2013.log
5.附加备注
1.全屏导航
ctrl + F - 向前移动一屏
ctrl + B - 向后移动一屏
ctrl + D - 向前移动半屏
ctrl + U - 向后移动半屏
2.单行导航
j - 向前移动一行
k - 向后移动一行
3.其它导航
G - 移动到最后一行
g - 移动到第一行
q / ZZ - 退出 less 命令
4.其它有用的命令
v - 使用配置的编辑器编辑当前文件
h - 显示 less 的帮助文档
&pattern - 仅显示匹配模式的行,而不是整个文件
5.标记导航
当使用 less 查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置:
ma - 使用 a 标记文本的当前位置
'a - 导航到标记 a 处
more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。
1.命令格式:
more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
2.命令功能:
more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。
3.命令参数:
+n 从笫n行开始显示
-n 定义屏幕大小为n行
+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
-c 从顶部清屏,然后显示
-d 提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
-l 忽略Ctrl+l(换页)字符
-p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
-s 把连续的多个空行显示为一行
-u 把文件内容中的下画线去掉
4.常用操作命令:
Enter 向下n行,需要定义。默认为1行
Ctrl+F 向下滚动一屏
空格键 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
V 调用vi编辑器
!命令 调用Shell,并执行命令
q 退出more
5.命令实例:
实例1:显示文件中从第3行起的内容
命令:
more +3 log2012.log
输出:
[root@localhost test]# cat log2012.log 2012-01 2012-02 2012-03 2012-04-day1 2012-04-day2 2012-04-day3 [root@localhost test]# more +3 log2012.log 2012-03 2012-04-day1 2012-04-day2 2012-04-day3
实例2:从文件中查找第一个出现"day3"字符串的行,并从该处前两行开始显示输出
命令:
more +/day3 log2012.log
输出:
[root@localhost test]# more +/day3 log2012.log ...skipping 2012-04-day1 2012-04-day2 2012-04-day3 2012-05 2012-05-day1
实例3:设定每屏显示行数
命令:
more -5 log2012.log
输出:
[root@localhost test]# more -5 log2012.log 2012-01 2012-02 2012-03 2012-04-day1 2012-04-day2
说明:
如下图所示,最下面显示了该屏展示的内容占文件总行数的比例,按 Ctrl+F 或者 空格键 将会显示下一屏5条内容,百分比也会跟着变化。
实例4:列一个目录下的文件,由于内容太多,我们应该学会用more来分页显示。这得和管道 | 结合起来
命令:
ls -l | more -5
输出:
[root@localhost test]# ls -l | more -5总计 36-rw-r--r-- 1 root root 308 11-01 16:49 log2012.log -rw-r--r-- 1 root root 33 10-28 16:54 log2013.log -rw-r--r-- 1 root root 127 10-28 16:51 log2014.log lrwxrwxrwx 1 root root 7 10-28 15:18 log_link.log -> log.log -rw-r--r-- 1 root root 25 10-28 17:02 log.log -rw-r--r-- 1 root root 37 10-28 17:07 log.txt drwxr-xr-x 6 root root 4096 10-27 01:58 scf drwxrwxrwx 2 root root 4096 10-28 14:47 test3 drwxrwxrwx 2 root root 4096 10-28 14:47 test4
说明:
每页显示5个文件信息,按 Ctrl+F 或者 空格键 将会显示下5条文件信息。
1、命令简介
nl (Number of Lines) 将指定的文件添加行号标注后写到标准输出。如果不指定文件或指定文件为"-" ,程序将从标准输入读取数据。
2、用法
nl [选项]... [文件]...
3、选项
-b, --body-numbering=样式 使用指定样式编号文件的正文行目-d, --section-delimiter=CC 使用指定的CC 分割逻辑页数-f, --footer-numbering=样式 使用指定样式编号文件的页脚行目-h, --header-numbering=样式 使用指定样式编号文件的页眉行目-i, --page-increment=数值 设置每一行遍历后的自动递增值-l, --join-blank-lines=数值 设置数值为多少的若干空行被视作一行
-n, --number-format= 格式 根据指定格式插入行号
-p, --no-renumber 在逻辑页数切换时不将行号值复位
-s, --number-separator=字符串 可能的话在行号后添加字符串
-v, --starting-line-number=数字 每个逻辑页上的第一行的行号
-w, --number-width= 数字 为行号使用指定的栏数
--help 显示此帮助信息并退出
--version 显示版本信息并退出
默认的选项设置是-v1 -i1 -l1 -sTAB -w6 -nrn -hn -bt -fn。CC 是用于分隔逻辑页数的两个分界符,其中缺失的第二个字符暗含了":",如果您要指定"\",
请输入"\\"。可用的样式如下:
a 对所有行编号
t 对非空行编号
n 不编行号
pBRE 只对符合正则表达式BRE 的行编号
FORMAT 是下列之一:
ln 左对齐,空格不用0 填充
rn 右对齐,空格不用0 填充
rz 右对齐,空格用0 填充
4、示例
示例1:显示行号
[root@oracledb study]# nl test1.log 1 20112 20123 2013
示例2:显示行号,指定对齐方式
[root@oracledb study]# nl -nln test1.log 1 2011 2 2012 3 2013 [root@oracledb study]# nl -nrn test1.log 1 20112 20123 2013 [root@oracledb study]# nl -nrz test1.log 000001 2011 000002 2012 000003 2013
示例3:指定宽度为4位 默认为6位
[root@oracledb study]# nl -nrz -w 4 test1.log 0001 2011 0002 2012 0003 2013
示例4:将标准输入的内容编号
[root@oracledb study]# nl line11 line1 line2 2 line2 line33 line3 [root@oracledb study]#
按ctrl+D结束输入
or EOF(End Of File)
[root@oracledb study]# nl <<EOF > line1 > line2 > line3 > EOF1 line12 line23 line3
1、命令简介
head (head) 用来显示档案的开头至标准输出中。如果指定了多于一个文件,在每一段输出前会给出文件名作为文件头。如果不指定文件,或者文件为"-",则从标准输入读取数据。
2、用法
nl [选项]... [文件]...
3、选项
-c, --bytes=[-]K 显示每个文件的前K 字节内容;如果附加"-"参数,则除了每个文件的最后K字节数据外 显示剩余全部内容 -n, --lines=[-]K 显示每个文件的前K 行内容;如果附加"-"参数,则除了每个文件的最后K行外 显示剩余全部内容-q, --quiet, --silent 不显示包含给定文件名的文件头-v, --verbose 总是显示包含给定文件名的文件头 --help 显示此帮助信息并退出 --version 显示版本信息并退出
4、示例
示例1:显示文件的前n行
[root@localhost opt]# head -n 5 test4
3452345
324532
32453245
35325235
3523453
示例2:输出文件除了最后n行的全部内容
[root@localhost opt]# head -n -5 test4
3452345
实例3:显示文件前n个字节
[root@localhost opt]# head -c 15 test4
3452345
324532
示例4:文件的除了最后n个字节以外的内容
[root@localhost opt]# head -c -15 test4
3452345
324532
32453245
35325235
实例5:head可以一次显示多个文件
[root@localhost opt]# head test2 test4 ==> test2 <== admkalsmklamkl asdlpasld;a,l asdmaslas,l==> test4 <== 3452345 324532 32453245 35325235 3523453 325235324523
1、命令简介
tail (tail) 用来显示档案的结尾(默认为10行)至标准输出中。若指定了多于一个文件,程序会在每段输出的开始添加相应文件名作为头。如果不指定文件或文件为"-" ,则从标准输入读取数据。
2、用法
nl [选项]... [文件]...
3、选项
-c, --bytes=K 输出最后K字节;另外,使用-c +K 从每个文件的第K 字节输出 -f, --follow[={name|descriptor}] 即时输出文件变化后追加的数据。 -n, 输出最后K行;另外,使用-n +K 从每个文件的第K行输出 --pid=PID 同 -f 一起使用,当 PID 所对应的进程死去后终止 -s, --sleep-interval=N 与-f合用,表示在每次反复的间隔休眠N秒
4、示例
示例1:显示文件的后n行
[root@localhost opt]# tail -n 5 test4
324532
32453245
35325235
3523453
325235324523
示例2:从第5行开始输出文件
[root@localhost opt]# tail -n +5 test4
3523453
325235324523
实例3:显示文件后n个字节
[root@localhost opt]# tail -c 30 test4
35325235
3523453
325235324523
示例4:从第n个字节开始显示内容
[root@localhost opt]# tail -c +30 test4
235
3523453
325235324523
实例5:动态显示文件内容,非常适合排错时使用
[root@localhost opt]# tail -f test4
3452345
324532
32453245
35325235
3523453
325235324523
参考:https://www.cnblogs.com/xqzt/category/813892.html
转载于:https://www.cnblogs.com/fqxy/p/11270831.html
Linux 基本命令(七)--cat,less,more,head,tail,nl 常用命令相关推荐
- cat、less、tail、wc命令查看文件或目录信息
cat.less.tail.wc命令查看文件或目录信息 cat显示文件内容及重定向 描述 cat命令可以查看文件的内容.连接文件.创建一个或多个文件和重定向输出到终端或指定文件 用法 cat [选项] ...
- Linux文件系统(文件系统类型、设备文件、常用命令、U盘与光盘挂载)
Linux文件系统(文件系统类型.设备文件.常用命令.U盘与光盘挂载) 本篇文章是Linux文件系统整块集合,包含了Linux文件系统介绍.设备文件介绍.常用文件系统命令(查看.修复与配置).挂载 ...
- linux xd命令,看Linux文件的内容:用cat,less,more,head,tail,nl,od,xxd,gv,xdvi命令
使用命令在Linux系统中查看文件的内容是Linux管理员的基本技能之一,在Linux中,有许多应用程序以不同的方式显示文件内容.您可以使用cat.less.more.head.tail.nl.od. ...
- 《Linux编程》学习笔记 ·001【基本操作、常用命令】
注:前言.目录见 https://blog.csdn.net/qq_44220418/article/details/108428971 文章目录 一.基本操作 1.查看目录/文件 2.路径跳转 (1 ...
- Linux引出环境变量的关键字,学习记录008-linux常用命令/设置系统and用户环境变量two(示例代码)...
修改文件 vi vi 是linux自带的,vim是vi的升级版 命令:vi 文件名 如果文件存在,那么就直接进入对应的文件的编译模式,如果文件不存在,那么就进入以文件名命名的空文件的编译模式 vi ...
- linux下开发python爬虫_linux入门教程—开发常用命令
开发常用命令 查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件. 查看一个程序是否运行 ps –ef|grep tomcat 查看所有有 ...
- Linux运维后台进程管理之Supervisor配置和常用命令常见问题案例和管理odoo后台进程
目录 Supervisor是什么? 安装 配置 实例配置 启动 Supervisor常用命令 常见错误 配置文件出错,没有开放http接口或相关配置有问题 Supervisor未启动,无法运行supe ...
- Linux 系统 uos / deepin 系统安装过程中 最全常用命令及问题 总结
本博客已暂停更新,为了您更好的阅读,请转至新博客https://www.whbwiki.com/1296.html 此教程用来解决uos/deepin系统安装过程中的一系列问题,其他linux发行版适 ...
- Linux防火墙:iptables禁IP与解封IP常用命令
转载:https://www.baidu.com/link?url=SJWsJbXb_P8s9tK4BGIwdAJD5aH1c5_eq5IHIiiqW6kUBBmH4zmnx4BNqXdmuxWz1T ...
最新文章
- http 的一生: 一、特点与 URL解析
- 查理和政策配对工厂——设计一个问卷运算系统的B端到C端
- JavaScript学习随记——属性类型
- debug error怎么解决_我要以血和泪的经历告诉你,这个 bug 太难解决了
- Android安全笔记-进程间通信基本概念(intent、bundle、Parcelable、parcel)
- Django开发微信公众平台
- 企业级OpenCV、图像识别资料免费下载,仅此1天!
- 【BZOJ3437】小P的牧场,斜率优化DP
- delphi.指针.应用----应用重要 多看 多练
- apache添加php支持
- mysql获取多张表中的数据_mysql – 从具有递归关系的两个表中获取数据
- unity资源面数规范
- GRE经验帖——bbs.gter.net
- word单页(或中间几页)横向显示
- droid3 flash
- 【CSGO】Akuma正式解散 !各奔东西 被NAVI撞碎了?
- 中国31省 5G网速 排名!
- computed vue 不 触发_vue computed 无法触发 set
- 获取微信公众号的二维码图片
- 移动端:苹果开发者账号Apple Developer Program
热门文章
- html5两条直线,Html5新特性用canvas标签画多条直线附效果截图
- matlab噪声 方差_产生多种分布的热噪声信号
- 缺失数据em算法python_EM算法
- 关于 pip安装的可能错误的排除
- 浏览器 刷新页面后回到顶部_当你在浏览器中,忘记了曾经的登录密码怎么办......
- linuxcnc 多轴联动_科学网—【LinuxCNC】开源机床Linux操作系统 - 刘洋的博文
- java 实体类属性排序_按照list中实体类的某一属性排序
- java匿名类_Java匿名类
- left+right /2_在C / C ++中使用Left Shift和Right Shift运算符
- 使用zk可以实现Master选举,实现原理是什么?