sed -n '1~2p' test.file 打印奇数行 sed -n '2~2p' test.file 打印偶数行 sed -n 'p;n' test.file 打印奇数行 sed...-n 'n;p' test.file 打印偶数行 sed -n '1,$p;n' test.file 打印奇数行 sed -n '1,$n;p' test.file 打印偶数行 sed '2...~2d' test.file 打印奇数行 sed '1~2d' test.file 打印偶数行 awk 'NR%2==1' test.file 打印奇数行 awk 'NR%2=...=0' test.file 打印偶数行 awk 'NR%2' test.file 打印奇数行 awk '!...$i; print }' test.file 13) 计算文件中总的字段和(例如计算单词数) # awk '{ total = total + NF }; END { print total }'
为了仅匹配整个单词,我们使用“ -w”标志 linuxmi@linuxmi:~/www.linuxmi.com$ grep -w "linuxmi" linuxmi.txt 要在搜索中包含子目录,...在这种情况下,我们将输出不包含单词“linuxmi”的其他任何内容。...linuxmi@linuxmi:~/www.linuxmi.com$ awk '{print}' linuxmi.txt 例如,要打印与给定模式匹配的行,让我们打印其中包含单词“linuxmi”的所有行...让我们打印linuxmi.txt文件中行的第一部分和第二部分。 linuxmi@linuxmi:~/www.linuxmi.com awk '{print 1, 注意$0输出整行。...linuxmi@linuxmi:~/www.linuxmi.com$ sed '3 s/linuxmi/xxvi/' linuxmi.txt 要仅打印替换的行而不是打印所有文件内容: linuxmi@
\< # 匹配单词的开始,如:/\<love/匹配包含以love开头的单词的行。 \> # 匹配单词的结束,如/love\>/匹配包含以love结尾的单词的行。...sed用法实例 替换操作:s命令 替换文本中的字符串: sed 's/book/books/' file -n选项 和 p命令 一起使用表示只打印那些发生替换的行: sed -n ‘s/test/TEST...,使用 [&] 替换它,& 对应于之前所匹配到的单词: echo this is a test line | sed 's/\w\+/[&]/g' [this] [is] [a] [test] [line...组合多个表达式 sed '表达式' | sed '表达式' 等价于: sed '表达式; 表达式' 引用 sed表达式可以使用单引号来引用,但是如果表达式内部包含变量字符串,就需要使用双引号。...: sed -n '/test/,/check/p' file 打印从第5行开始到第一个包含以test开始的行之间的所有行: sed -n '5,/^test/p' file 对于模板test和west
\< # 匹配单词的开始,如:/\<love/匹配包含以love开头的单词的行。 \> # 匹配单词的结束,如/love\>/匹配包含以love结尾的单词的行。...sed用法实例 替换操作:s命令 替换文本中的字符串: sed 's/book/books/' file -n选项 和 p命令 一起使用表示只打印那些发生替换的行: sed -n s/test/TEST...\w+ 匹配每一个单词,使用 [&] 替换它,& 对应于之前所匹配到的单词: echo this is a test line | sed 's/\w\+/[&]/g' [this] [is] [a]...'表达式' | sed '表达式' 等价于: sed '表达式; 表达式' 引用 sed表达式可以使用单引号来引用,但是如果表达式内部包含变量字符串,就需要使用双引号。...: sed -n '/test/,/check/p' file 打印从第5行开始到第一个包含以test开始的行之间的所有行: sed -n '5,/^test/p' file 对于模板test和west
打印某行到某行之间的内容 打印某一行到某一行之间的内容 需求: 例如:有个文件test的内容如下: ert fff ** [abcfd] 123 324 444 [rty] ** fgfgf 怎么能截取...'|sort|uniq -c|sort -rn 二. sed转换大小写 把每个单词的第一个小写字母变成大写 [root@hf-01 sed]# sed 's/\b[a-z]/\u&/'g test.txt...[root@hf-01 sed]# 总结 \b 表示单词的边界 & 表示 第一个 // 里面的内容 \u表示大写 \l表示小写 三. sed在某一行最后添加一个数字 [...打印1到100行含某个字符串的行 使用sed打印1到100行包含某个字符串的行 sed -n '1,100{/abc/p}' 1.txt 指定多个字符 sed -n '1,100{/abc.../p;/dd/p}' 2.txt sed -n :不重复打印 -n和p参数一起使用
不是一家人不进一家门,本文不是为你写的。 一个简单的入门 ? 如图,一个简单的sed命令包含三个主要部分:参数、范围、操作。要操作的文件,可以直接挂在命令行的最后。...sed -n '2p' /etc/group 表示打印group文件中的第二行。...下面这条命令,将会把文件中的每一行,使用引号包围起来。 sed 's/.*/"&"/' file flag 参数 这些参数可以单个使用,也可以使用多个,仅介绍最常用的。...g 默认只匹配行中第一次出现的内容,加上g,就可以全文替换了。常用。 p 当使用了-n参数,p将仅输出匹配行内容。 w 和上面的w模式类似,但是它仅仅输出有变换的行。...输出长度不小于50个字符的行 sed -n '/^.{50}/p' 统计文件中有每个单词出现了多少次 sed 's/ /\n/g' file | sort | uniq -c 查找目录中的py文件,删掉所有行级注释
N # 追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。 p # 打印模板块的行。 P # (大写) 打印模板块的第一行。 q # 退出Sed。...< # 匹配单词的开始,如:/<love/匹配包含以love开头的单词的行。 > # 匹配单词的结束,如/love>/匹配包含以love结尾的单词的行。...sed用法实例 替换操作:s命令 替换文本中的字符串: sed 's/book/books/' file -n选项 和 p命令 一起使用表示只打印那些发生替换的行: sed -n ‘s/test/TEST...,使用 [&] 替换它,& 对应于之前所匹配到的单词: echo this is a test line | sed 's/\w\+/[&]/g' [this] [is] [a] [test] [line.../nologin 选定行的范围:,(逗号) 所有在模板test和check所确定的范围内的行都被打印: sed -n '/test/,/check/p' file 打印从第5行开始到第一个包含以test
() 返回 字符长度 if(0 ~ “aa”) print 0 如果这一行包含 “aa”, 就打印这一行内容 if(1 ~ “aa”) print 0 如果第一段 包含 “aa”, 就打印这一行内容...if(1 == “lisi”) print 0 如果第一段 等于 “lisi”, 就打印这一行内容 sed 可选项 目标文件 对目标文件 进行 过滤查询 或 替换 p 打印 $ 代表 最后一行 -n...仅显示处理后的结果 -e 根据表达式 进行处理 sed -n -e ‘1,5p’ 1.txt 列出 1.txt的 1~5行 的数据 sed -n -e ‘1,$p’ 1.txt 列出01.txt的所有数据...nl 01.txt | sed -e '1,3d’ 保留1.txt中前4行数据,并显示行号 nl 01.txt | sed -e '5,$d’ 在01.txt的第二行后添加aaaaa,并显示行号 nl...txt nl passwd 查看数据 从1.txt中提出数据,匹配出包含root的内容,再把nologin替换为itheima nl 01.txt | grep ‘root’ | sed -e 's/nologin
---- sed 如何转换大小写字母: sed中,使用\u表示大写,\l表示小写 1....\b 是 boundary(边界) 的意思,表示单词到此结束,能够匹配 abc,但不匹配 abcd 等 ---- 打印奇数行或偶数行: 方法1:# sed -n 'p;n' test.txt #奇数行...sed打印1到100行包含某个字符串的行: # sed -n '1,100{/abc/p}' 1.txt # sed -n '1,100p' /etc/passwd | grep root ---...egrep 或awk 过滤两个或多个关键词: # grep -E '123|abc' filename // 找出文件(filename)中包含123或者包含abc的行 # egrep...( 最后列使用现在的时间,时间格式为YYYYMMDDHHMISS) 各列的值应如下所示,每增加一行便加1,共500万行。
my将被替换为**my** \< 词首定位符 /\<my/ 匹配包含以my开头的单词的行 \> 词尾定位符 /my\>/ 匹配包含以my结尾的单词的行...$ sed -n 's/^test/mytest/p' example (-n)选项和p标志一起使用表示只打印那些发生替换的行。也就是说,如果某一行开头的test被替换成mytest,就打印它。...选定行的范围逗号 $ sed -n '/test/,/check/p' example 所有在模板test和check所确定的范围内的行都被打印。...$ sed -n '5,/^test/p' example 打印从第五行开始到第一个包含以test开始的行之间的所有行。...退出q命令 $ sed '10q' example 打印完第10行后,退出sed。
-r # 递归 -v # 反选,过滤内容 -w # 匹配完整单词 -z # 匹配完整行 4、使用示例 从文本文件中查找只包含...--------------------- # 匹配所有不包含 root 的行,并打印 awk '!...,i.bak 表示编辑的同时生成备份文件 -n # 仅显示经过编辑的行 -r # 支持扩展正则匹配 # 使用技巧 只要编辑文件,就使用参数 i 只要用到动作...保留 $ 引用 '(单引号):关闭所有引用 查找、打印内容 # 打印指定的行(第 1~5 行) sed -n "1,5p" demo.txt ------------------------------...--------- # 打印指定行以外的内容 sed "1,5d" demo.txt ---------------------------------------------------- # 打印第一行
-v:反向查找,只打印不匹配的行。 -n:显示匹配行的行号。 -r:递归查找子目录中的文件。 -l:只打印匹配的文件名。 -c:只打印匹配的行数。...| grep -c linux 在当前目录中,查找后缀有info字样的文件中包含 linux字符串的文件,并打印出该字符串的行 grep linux *info 以递归的方式在/home/sk/test...,基本语法格式如下: rgerp [参数选项] [文件] 举例说明 在当前目录下查找句子中包含"linux"字符串的文件 rgrep linux * 3、sed 命令 sed命令主要是利用脚本来处理文本文件...后面通常不接任何东东 i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行) p :打印,亦即将某个选择的数据印出。...python linux shell script 在test.txt文件的第三行后面插入一行“this is c++ ” sed -e 3a\this is c++ test.txt 使用如上
)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。...提供了后缀名(.bak)则备份文件 -l N/ --line-length=N 为l命令指定换行的长度n -n/--quiet/——silent 不自动打印模式空间内容,仅显示脚本处理后的结果,...\< 匹配单词的开始,如:/\<love/匹配包含以love开头的单词的行。 \> 匹配单词的结束,如/love\>/匹配包含以love结尾的单词的行。...打印输入文件的指定行内容 需用到-n参数:不自动打印, 需用到p命令:打印模块的行 $ sed -n '2p' 123.txt #注意一定要加-n,否则会默认自动打印所有内容 $ sed....txt里第一条包含sh的行及以下到末尾的所有行 $ sed -n '/sh/ ,$p' 123.txt 逆序输出文本内容 需用到命令:!
grepgrep 的全称为 "global regular expression print",意味着它可以通过正则表达式来搜索文本,并把匹配的行打印出来。...grep 命令常用选项及含义选项含义-c仅列出文件中包含匹配模式的行数-i忽略模式中的字母大小写-l列出包含匹配行的文件名-n在每一行的最前面列出行号-v列出不匹配模式的行-w仅匹配整个单词,忽略部分匹配的行示例...它可以根据脚本命令来处理文本文件中的数据。这些命令可以直接在命令行中输入,也可以存储在一个脚本文件中。sed 使用方式每次仅读取一行内容;根据提供的规则命令匹配并修改数据。...awk 打印出日志中每行的第一个字段(一般是 IP 地址)。...grep 用于搜索文本,sed 用于编辑文本,而 awk 则用于更复杂的文本分析和处理。通过组合使用 grep、sed 和 awk,我们可以轻松地处理复杂的文本数据,有效提高我们的工作效率。
sed -n ‘/hani/p’ test [只打印包含匹配文本模式的行] root@ubuntu-admin-a1:/home/sedTest# sed -n '/hani/p' test hello...反选,打印没有匹配到 hani 的行 sed -n ‘s/old/new/gp’ test 只打印匹配替换的行 6.7 sed w 将所选的行写入文件 w 命令用来将文本中指定行的内容写入文件中 格式如下...-n :显示行号 -w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker -c :显示总共有多少行被匹配到了...grep linuxtechi /etc/passwd /etc/shadow /etc/gshadow -例3 使用-l参数列出包含指定模式的文件的文件名。...-n参数,在文件中查找指定模式并显示匹配行的行号 grep -n root /etc/passwd /etc/shadow -例5 使用-v参数输出不包含指定模式的行 输出/etc/passwd文件中所有不含单词
实例 1)在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行。...例如,查找指定目录/etc/acpi 及其子目录(如果存在子目录的话)下所有文件中包含字符串"update"的文件,并打印出该字符串所在行的内容,使用的命令为: grep -r update /etc/...前面各个例子是查找并打印出符合条件的行,通过"-v"参数可以打印出不符合条件行的内容。...查找文件名中包含 test 的文件中不包含test 的行,此时,使用的命令为: grep -v test *test* 结果如下所示: $ grep-v test* #查找文件名中包含test 的文件中不包含...-d :自定义分隔符,默认为制表符,与-f一起使用。 -f :根据-d的分隔符将一段信息分成数段,使用-f表示取出第几段的意思。 -n :取消分割多字节字符。仅和 -b 标志一起使用。
字节数、单词数、行数. 4 uniq uniq 命令用于检查及删除文本文件中重复出现的行,一般与 sort 命令结合使用。...4.1 目标 uniq 命令用于检查及删除文本文件中重复出现的行,一般与 sort 命令结合使用。...“aa”, 就打印这一行内容 if($1 ~ “aa”) print $0 如果**第一段 **包含 “aa”, 就打印这一行内容 if($1 == “lisi”) print $0 如果第一段 等于...进行 过滤查询 或 替换 可选参数 可选项 英文 含义 p print 打印 $ 代表 最后一行 -n 仅显示处理后的结果 -e expression 根据表达式 进行处理 练习1 列出 1...练习4: 查找01.txt中包含root行 答案: sed -n -e '/root/p' 1.txt 练习5 列出01.txt中包含root的内容,root不区分大小写,并显示行号 可选项
单词数 wc -l 行数 uniq 命令用于检查及删除文本文件中重复出现的行,一般与 sort 命令结合使用 tee 命令结果 | tee 文件1 文件2 文件3 通过 tee...返回 字符长度 if(0 ~ “aa”) print 0 如果这一行包含 “aa”, 就打印这一行内容 if(1 ~ “aa”) print 0 如果第一段 包含 “aa”, 就打印这一行内容 if(1...== “lisi”) print 0 如果第一段 等于 “lisi”, 就打印这一行内容 awk ‘BEGIN{初始化操作}{每行都执行} END{结束时 操作}’ 文件名 BEGIN{ 这里面放的是执行前的语句...} {这里面放的是处理每一行时要执行的语 句} END {这里面放的是处理完所有的行后要 执行的语句 } sed sed 可选项 目标文件 对目标文件 进行 过滤查询 或 替换 p 打印 $ ?...代表 后一行 -n ? 仅显示处理后的结果 -e 根据表达式 进行处理 -i 替换原有文件内容 d 删除指定内容 i 目标前面 插入内容 a 目标后面 追加内容
前言 sed(Stream EDitor,流编辑器)是文本处理中常用的工具,能够使用正则表达式,功能不可小觑。...’ filename 执行脚本中的sed处理命令 常用参数 -n :只打印模式匹配的行 -e :直接在命令行模式上进行sed动作编辑,此为默认选项 -f :将sed的动作写在一个文件内,用–f filename...执行filename内的sed动作 -r : 在脚本中使用扩展正则表达式。...n 读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。 N 追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。 p 打印模板块的行。 P(大写) 打印模板块的第一行。...\< 匹配单词的开始,如:/\<love/匹配包含以love开头的单词的行。 \> 匹配单词的结束,如/love\>/匹配包含以love结尾的单词的行。
领取专属 10元无门槛券
手把手带您无忧上云