
正文
linux打印指定行命令 linux 打印文件中的特定内容
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
linux awk 如何只输出指定行
-F fs or –field-separator fs
指定输入文件折分隔符,fs是一个字符串或者是一个正则表达式,如-F:
-v var=value or –asign var=value
赋值一个用户定义变量。
-f scripfile or –file scriptfile
从脚本文件中读取awk命令。
-mf nnn and -mr nnn
对nnn值设置内在限制,-mf选项限制分配给nnn的最大块数目;-mr选项限制记录的最大数目。这两个功能是Bell实验室版awk的扩展功能,在标准awk中不适用。
-W compact or –compat, -W traditional or –traditional
在兼容模式下运行awk。所以gawk的行为和标准的awk完全一样,所有的awk扩展都被忽略。
-W copyleft or –copyleft, -W copyright or –copyright
打印简短的版权信息。
-W help or –help, -W usage or –usage
打印全部awk选项和每个选项的简短说明。
-W lint or –lint
打印不能向传统unix平台移植的结构的警告。
-W lint-old or –lint-old
打印关于不能向传统unix平台移植的结构的警告。
-W posix
打开兼容模式。但有以下限制,不识别:/x、函数关键字、func、换码序列以及当fs是一个空格时,将新行作为一个域分隔符;操作符和=不能代替^和^=;fflush无效。
-W re-interval or –re-inerval
允许间隔正则表达式的使用,参考(grep中的Posix字符类),如括号表达式[[:alpha:]]。
-W source program-text or –source program-text
使用program-text作为源代码,可与-f命令混用。
-W version or –version
打印bug报告信息的版本。
相关问答
Q1: linux查找并输出特定行和它的前一行且在后面再输出一个空白行的命令
linux grep命令1.作用
Linux系统中grep命令是一种强大linux打印指定行命令的文本搜索工具linux打印指定行命令,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
2.格式
grep [options]
3.主要参数
[options]主要参数:
-c:只输出匹配行的计数。
-I:不区分大 小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\:从匹配正则表达 式的行开始。
\:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
。:所有的单个字符。
* :有字符,长度可以为0。
4.grep命令使用简单实例
$ grep ‘test’ d*
显示所有以d开头的文件中包含 test的行。
Q2: linux命令怎么显示文件某一行或几行内容
使用sed命令;
具体查看使用规则:
#sed --help;
显示文件X行命令:
#sed -n 'xp' filename
显示文件X行到Y行的内容:
#sed -n 'x,yp' filename
相关显示命令还有tail,cat.awk,head等,可以常看LInux命令大全,或者man命令|help命令查看相关用法。
Q3: linux中如何用sed命令打印行号:内容?
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
Q4: Linux命令行操作之sed
sed命令行格式:sed [options] 'command' file(s)
options常用选项:
-n或--quiet或——silent:仅显示script处理后linux打印指定行命令的结果;
-e:以选项中的指定的script来处理输入的文本文件;
-f:以选项中指定的script文件来处理输入的文本文件;
-r∶sed 的动作支援的是延伸型正规表示法的语法;
-i∶直接修改读取的档案内容linux打印指定行命令,而不是由萤幕输出;
-h或--help:显示帮助;
-V或--version:显示版本信息。
Command常用命令:
a:新增linux打印指定行命令,a 的后面可以接字符串,而这些字符串会在新的一行出现(目前的下一行);
c:取代,c 的后面可以接字符串,这些字符串可以取代 n1.n2 之间的行;
d:删除,d 后面通常不接任何字符串;
i:插入,i 的后面可以接字符串,而这些字符串会在新的一行出现(目前的上一行);
p:列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作;
s:取代,可以直接进行取代的工作,通常与正规表达式搭配使用。
实例说明:
新增操作:a命令
sed '/^bird/a\test' file将test追加到 以bird开头的行后面
删除操作:d命令
sed '/^$/d' file #删除空白行;
sed '2d' file #删除第二行;
sed '2.$d' file #删除第2行到最后一行;
sed '$d' file #删除最后一行;
sed '/^bird/'d file #删除所有开头是bird的行;
插入操作:i命令
sed -i '3i\bird ' bird.conf #在bird.conf文件第3行之前插入bird
替换文本中的字符串:s命令
sed 's/bird/birds/' file #将文本中的bird替换成birds;
sed -i 's/ bird / birds /g' file #将file文件中每一行的第一个bird替换为birds;
linux打印指定行命令的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux 打印文件中的特定内容、linux打印指定行命令的信息别忘了在本站进行查找喔。







