linux *** 作系统下,加上行号输出一个文本文件,列出所有这样的方法

linux *** 作系统下,加上行号输出一个文本文件,列出所有这样的方法,第1张

nl命令在linux系统中用来计算文件行号。nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等等的功能。

1.命令格式:

nl [选项] [文件]

2.命令参数:

-b :指定行号指定的方式,主要有两种:

-b a:表示不论是否为空行,也同样列出行号(类似 cat -n);

-b t:如果有空行,空的那一行不要列出行号(默认值);

-n :列出行号表示的方法,主要有三种:

-n ln:行号在萤幕的最左方显示;

-n rn:行号在自己栏位的最右方显示,且不加 0 ;

-n rz:行号在自己栏位的最右方显示,且加 0 ;

-w :行号栏位的占用的位数。

-p在逻辑定界符处不重新开始计算。

方法1:

# nl READMEmd

1 # sqlmap

方法2:

# awk '{print NR,$0}' READMEmd

1 # sqlmap

方法3:

# cat -n READMEmd

1 # sqlmap

方法4:

# sed = READMEmd|sed 'N;s/\n/:/'

1:# sqlmap

sed = 文件名 | sed 'N;s/\n/:/' | sed -n '/显示行包含的关键字/p',例子:

假设我有文件test,内容为:

Baidu123

ppppqqqq

bAidu567

a此时我想把含有baidu的行以 "行号:该行完整内容"的形式输出,则只需要执行:

sed = test | sed 'N;s/\n/:/' | sed -n '/baidu/Ip' //最后p前面的是大写的I

得到结果为:

1:Baidu123

3:bAidu567

忽略大小写,还有一个比较笨的方法,使用[],将关键字的所有字母的大小写都包括了,就来例来说,/[bB][aA][iI][dD][uU]/

b输出所有的行,不使用关键字过滤行,则只需要去掉最后一部分,即:

sed = test | sed 'N;s/\n/:/'

得到结果为:

1: Baidu123

2:ppppqqqq

3bAidu567

完!

---------------------------------------------

grep解决这个问题比较好吧,假设有文件test,内容为:

Baidu123

ppppqqqq

bAidu567

如果我想得到格式如 line: line_content这种格式内容的话:

grep -ni "baidu" test

结果为:

1:Baidu123

3:bAidu567

命令:相关显示命令有sed,tail,catawk,head等,可以常看Linux命令大全,man命令或者help命令查看相关用法。我们只介绍其中的一部分。

一、sed命令

#sed --help;查看具体使用规则:

#sed -n 'xp' filename;显示文件X行命令:

#sed -n 'x,yp' filename;显示文件X行到Y行的内容:

在Linux环境下的编辑器有vi、vim、gedit等等。进入这些编辑器之后,为了方便我们需要编辑器显示出当前的行号,可偏偏编辑器默认是不会显示行号的。我们有二种法可以解决:第一种是,手动显示:在vim命令行模式下输入:setnu取消显示:在vim命令行模式下输入:setnonu第二种是,永久自动显示:我们修改一个配置文件。我们输入命令:vim~/vimrc打开后是一个空文件,我们添加setnu,保存退出,再次进入vim编辑器,就会自动显示出行号了。如此简单

可以在命令里使用下面的命令查看:

cat -A 要查看的文件路径

或者使用vim打开你要查看的文件,在末行模式输入 :set list

Linux是一套免费使用和自由传播的类Unix *** 作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的 *** 作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络 *** 作系统。

Linux *** 作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。

严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的 *** 作系统。

以上就是关于linux *** 作系统下,加上行号输出一个文本文件,列出所有这样的方法全部的内容,包括:linux *** 作系统下,加上行号输出一个文本文件,列出所有这样的方法、linux中如何用sed命令打印行号:内容、如何用linux脚本获取到第二行输出等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9568688.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存