Unix文本处理工具之sed

和上文提到的awk一样,sed也是Unix的文本处理工具。sed是Stream Editor(流式编辑器)的缩写,它能够基于模式匹配过滤(所谓过滤就是在文件中找到符合某些条件的行)修改文本(就是对找到的符合条件的内容进行一些修改操作)。
1、sed命令格式
1.1 sed命令的基本格式
sed命令主要有三种使用形式:

  • sed ‘编辑指令’ 文件1 文件2 ……:用于将处理后的结果输出
  • sed -n ‘编辑指令’ 文件1 文件2 ……:用于只输出编辑指令影响的行
  • sed -i ‘编辑指令’ 文件1 文件2 ……:用于直接在文本文件上修改文本内容(在物理磁盘上修改文件)
1.2 编辑指令
编辑指令主要由两部分组成:前面是逗号隔开的两个地址(或者没有逗号,只有一个地址),代表要处理文本的起始位置到结束位置;后面是要进行的操作类型。格式如下:
[起始地址[,结束地址]]操作类型
如果在一条sed命令中要用到多条编辑指令,那么各个编辑指令之间要用; 隔开,也可以将多条编辑指令放在多个单引号中,但是这样的话,要在每个单引号的前面加一个-e。下面是一个简单的例子:
$cat sed_test.txt 1 apple a,b,d,f 2 boy alsdjf,apple,kdjf 3 cat 163.2.201.1 4 dog www.google.com 5 eat http://blog.csdn.net/xia7139$sed -n '2,5p' sed_test.txt 2 boy alsdjf,apple,kdjf 3 cat 163.2.201.1 4 dog www.google.com 5 eat http://blog.csdn.net/xia7139$sed -n '5p' sed_test.txt 5 eat http://blog.csdn.net/xia7139$sed -n -e '2p' -e'5p' sed_test.txt 2 boy alsdjf,apple,kdjf 5 eat http://blog.csdn.net/xia7139

1.3 操作类型 sed常用的操作类型如下:

操作 作用
p 打印文本行(print)
n 取下一行(next)
d 删除(delete)
s 字符串替换(substitude)
a 追加新的文本(append)
2、例子 下面的例子都是对文提到的文件sed_test.txt的操作:

使用正则表达式: (1)输出从第一个包含kdjf的行到最后一行($代表最后一行) $sed -n '/kdjf/,$p' sed_test.txt 2 boy alsdjf,appleapple,kdjf 3 cat 163.2.201.1 4 dog www.google.com 5 eat http://blog.csdn.net/xia7139 (2)输出包含单词apple的行 (shell中单词是指一个字符串前后有空格或其它标点符号。正则表达式中用一个<>来界定一个单词,在sed中用该符号要进行转义。) $sed -n '/\/p' sed_test.txt 1 apple a,b,d,f删除指定行(这里没有-i,不对原文件进行操作,只是将处理后的结果输出。): (1)删除第2到4行 $sed '2,4d' sed_test.txt 1 apple a,b,d,f 5 eat http://blog.csdn.net/xia7139 (2)删除包含appleapple的行和最后一行($) $sed '/appleapple/d; $d' sed_test.txt 1 apple a,b,d,f 3 cat 163.2.201.1 4 dog www.google.com (3)删除不包含(!表示反选,选中不符合条件的行)apple的行(这样就只剩下了包含apple的行了) $sed '/apple/!d' sed_test.txt 1 apple a,b,d,f 2 boy alsdjf,appleapple,kdjf替换指定文本: (1)将1-4行的apple换成AMAZON。s代表替换,g代表如果一行出现两个apple则全部替换。 $sed '1,4s/apple/AMAZON/g' sed_test.txt 1 AMAZON a,b,d,f 2 boy alsdjf,AMAZONAMAZON,kdjf 3 cat 163.2.201.1 4 dog www.google.com 5 eat http://blog.csdn.net/xia7139 (2)注释shell脚本(在行首插入#) $sed '1,3s/^/#/g' sed_test.txt #1 apple a,b,d,f #2 boy alsdjf,appleapple,kdjf #3 cat 163.2.201.1 4 dog www.google.com 5 eat http://blog.csdn.net/xia7139 (3)删除字符串apple(如果不写起始地址和结束地址,则默认为所有行。) $sed 's/apple//g' sed_test.txt 1a,b,d,f 2 boy alsdjf,,kdjf 3 cat 163.2.201.1 4 dog www.google.com 5 eat http://blog.csdn.net/xia7139

以上两篇文章介绍了Unix两个文本处理工具awk和sed,希望对大家有所帮助。
3、sed和正则表达式
利用正则表达式结合sed能极大地帮助我们处理文本。比如下面的例子:

例1:正则表达式初步使用。 $ cat poem.txt The choice By William Butler Yeats The intellect of man is forced to choose Perfection of life ,or of the work, And if take the second must refuse A heavenly mansion ,raging in the dark. When all that story 's finished ,what's the news? In luck or out the toil has left its mark: That old perplexity an empty purse, Or the day's vanity ,the night's remorse. (1)用命令删掉文本行首的空格。 $ sed 's/^\s*//g' poem.txt The choice By William Butler Yeats The intellect of man is forced to choose Perfection of life ,or of the work, And if take the second must refuse A heavenly mansion ,raging in the dark. When all that story 's finished ,what's the news? In luck or out the toil has left its mark: That old perplexity an empty purse, Or the day's vanity ,the night's remorse. 也可以这样(注意,这里+是要被转义的,而上面的*不用转义。): $ sed 's/^\s\+//g' poem.txt The choice By William Butler Yeats The intellect of man is forced to choose Perfection of life ,or of the work, And if take the second must refuse A heavenly mansion ,raging in the dark. When all that story 's finished ,what's the news? In luck or out the toil has left its mark: That old perplexity an empty purse, Or the day's vanity ,the night's remorse.(2)删掉文中所有的空格 $ sed 's/\s*//g' poem.txt Thechoice ByWilliamButlerYeats Theintellectofmanisforcedtochoose Perfectionoflife,orofthework, Andiftakethesecondmustrefuse Aheavenlymansion,raginginthedark. Whenallthatstory'sfinished,what'sthenews? Inluckoroutthetoilhasleftitsmark: Thatoldperplexityanemptypurse, Ortheday'svanity,thenight'sremorse. 如下也可以达到同样的效果: $ sed 's/\s\+//g' poem.txt Thechoice ByWilliamButlerYeats Theintellectofmanisforcedtochoose Perfectionoflife,orofthework, Andiftakethesecondmustrefuse Aheavenlymansion,raginginthedark. Whenallthatstory'sfinished,what'sthenews? Inluckoroutthetoilhasleftitsmark: Thatoldperplexityanemptypurse, Ortheday'svanity,thenight'sremorse.也可以使用如下命令实现相关功能: $ sed 's/^[[:space:]]*//g' poem.txt(删除行开头的空格) $ sed 's/^[ ]*//g' poem.txt(删除行开头的空格) $ sed 's/^ *//g' poem.txt(删除行开头的空格) $ sed 's/^[[:space:]]*//g' poem.txt(删除行开头的空格) $ sed '/^$/d' poem.txt(删除空行) $ sed '/^[ ]*$/d' poem.txt(删除空行和只有空格的行)





4、初步体会sed的威力
4.1 去掉不想要的标签
比如你有一个文件内容如下:

test.txt: {'books/daglib/0015113': 'Scale-isometric polytopal graphs in hypercubes and Zn. - 锐客网\n', 'books/daglib/0097705': 'Discrete total lp-norm approximation problem for the function. - 锐客网\n', 'books/daglib/p/AveneauCFM11': 'A Framework for <i>n</i>-Dimensional Visibility Computations. - 锐客网\n', 'books/daglib/p/Carter11': 'Using <i>Dungeons and Dragons</i> to Integrate Curricula in Classroom. - 锐客网\n', 'books/daglib/p/CasolaLRV11': 'Access Control in Cloud-on-Grid Systems: The <i>PerfCloud</i> Case Study. - 锐客网\n', 'books/daglib/p/ChunKZDMZ11': 'Reverse Engineer of Gene Networks with Application <i>in silico</i> Network. - 锐客网\n', 'books/daglib/p/ChungK11': 'eQTL Mapping for Functional Classes of <i>Saccharomyces cerevisiae</i> Genes wssion. - 锐客网\n', 'books/daglib/p/Goldman11': 'A Model for Computer Graphics Based on Algebra for \xe2\x84\x9d3. - 锐客网\n', 'books/daglib/p/LiZ11': 'Line Geometry over \xe2\x84\x9d3, 3, and Stewart Platforms. - 锐客网\n', 'books/daglib/p/Liestol11': '<i>Situated Simulations</i> Between Reality and Designing a Narrative Space. - 锐客网\n'}

现在你要将其中的各行中的类似于标签之类的东西去掉,只需用一条sed命令:

$sed -e 's///g; s/<\/title>//g' -e 's/<i>//g; s/<\/i>//g' -e 's///g; s/<\/sub>//g' -e 's///g; s/<\/sup>//g' test.txt {'books/daglib/0015113': 'Scale-isometric polytopal graphs in hypercubes and Zn.\n', 'books/daglib/0097705': 'Discrete total lp-norm approximation problem for the function.\n', 'books/daglib/p/AveneauCFM11': 'A Framework for n-Dimensional Visibility Computations.\n', 'books/daglib/p/Carter11': 'Using Dungeons and Dragons to Integrate Curricula in Classroom.\n', 'books/daglib/p/CasolaLRV11': 'Access Control in Cloud-on-Grid Systems: The PerfCloud Case Study.\n', 'books/daglib/p/ChunKZDMZ11': 'Reverse Engineer of Gene Networks with Application in silico Network.\n', 'books/daglib/p/ChungK11': 'eQTL Mapping for Functional Classes of Saccharomyces cerevisiae Genes wssion.\n', 'books/daglib/p/Goldman11': 'A Model for Computer Graphics Based on Algebra for \xe2\x84\x9d3.\n', 'books/daglib/p/LiZ11': 'Line Geometry over \xe2\x84\x9d3, 3, and Stewart Platforms.\n', 'books/daglib/p/Liestol11': 'Situated Simulations Between Reality and Designing a Narrative Space.\n'}</code></blockquote><br /> 如果要在原文件中修改,只需加-i参数。 <br> 4.2 多文件中的替换<br /> temp目录下有t1.txt、t2.txt和t3.txt等三个文件,其内容分别如下:<br /> <br /> <blockquote><code>$ cat t1.txt StevenJobs mac i like mill fuck $ cat t2.txt youi life love lol StevenJobs sex friend one night stand for one night $ cat t3.txt good night nigtmare fuck StevenJobs StevenJobs StevenJobsStevenJobs mac</code></blockquote><br /> 下面想要将上面三个文件中的“StevenJobs”换成“Apple”,一一替换的话太麻烦,这里用一个稍微简单的方法,一条命令完成所有文件的替换。 预备知识<br /> (1)反引号<br /> 反引号括起来的字符串被shell解释为命令行,在执行时,shell首先执行该命令行,并以它的标准输出结果取代整个反引号(包括两个反引号)部分。这样,可以实现用一个命令的执行输出作为另一条命令参数的结果。在bash shell中,$()也会有相同的效果,下面是一个例子。<br /> <br /> <blockquote><code>$ echo `ls` t1.txt t2.txt t3.txt $ echo $(ls) t1.txt t2.txt t3.txt</code></blockquote><br /> (2)grep命令的r和l选项 grep -r: Read all files under each directory, recursively。<br /> 也是就是说,会递归逐层向下查找目录和目录子目录下的文件,如果没有-r选项grep只会查找当前目录下的文件,不会查找子目录。<br /> grep -l: Suppress normal output; instead print the name of each input file fromwhichoutputwouldnormallyhavebeenprinted.The scanning will stop on the first match.<br /> 这个选项的man手册读起来稍显晦涩,简单地说,-l选项只会打印出包含我们要查找内容的文件名称,下面是grep的例子。<br /> <br /> <blockquote><code>$ grep -r "Steven" . ./t1.txt:StevenJobs mac ./t2.txt: StevenJobs ./t3.txt:StevenJobs StevenJobs ./t3.txt:StevenJobsStevenJobs $ grep "Steven" . $ grep -r "Steven" . ./t1.txt:StevenJobs mac ./t2.txt: StevenJobs ./t3.txt:StevenJobs StevenJobs ./t3.txt:StevenJobsStevenJobs //下面的命令和上面的命令效果相同 $ grep"Steven" * t1.txt:StevenJobs mac t2.txt: StevenJobs t3.txt:StevenJobs StevenJobs t3.txt:StevenJobsStevenJobs $ grep -rl "Steven" . ./t1.txt ./t2.txt ./t3.txt</code></blockquote><br /> 用上上面的命令,不难得出下面的解决办法,效果如下: <strong>【Unix文本处理工具之sed】</strong><br /> <blockquote><code>$ sed -i 's/StevenJobs/apple/g' `grep -rl StevenJobs .` $ cat t* apple mac i like mill fuck youi life love lol apple sex friend one night stand for one night good night nigtmare fuck apple apple appleapple mac</code></blockquote><br /> >.< Over!</p> <div class="dede_pages"><ul></ul></div> <div class="pcd_ad"> <center><div class="_ahwullr0ac"></div> <script type="text/javascript"> (window.slotbydup = window.slotbydup || []).push({ id: "u6834461", container: "_ahwullr0ac", async: true }); </script> <script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" > </script></center> </div> <div class="mbd_ad"> <div style=margin-top:10px;margin-bottom:10px;> <div class="_i7aftr79jl"></div> <script type="text/javascript"> (window.slotbydup = window.slotbydup || []).push({ id: "u5950612", container: "_i7aftr79jl", async: true }); </script> <!-- ½űֻһ --> <script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" > </script> </div> </div> <h3>推荐阅读</h3> <ul class="post-loop post-loop-default cols-0"> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/3110917.html" title="椰子油的生活小妙用 椰子油有什么用途和功效"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="椰子油的生活小妙用 椰子油有什么用途和功效" src="http://img.readke.com/230904/15232V643-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/3110917.html"> <b>椰子油的生活小妙用 椰子油有什么用途和功效 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/3393902.html" title="庆东锅炉故障代码是什么如何解决"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="庆东锅炉故障代码是什么如何解决" src="http://img.readke.com/231109/094Z35K0-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/3393902.html"> <b>庆东锅炉故障代码是什么如何解决 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/2300628.html" title="教学教务管理人员是干什么的"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="教学教务管理人员是干什么的" src="http://img.readke.com/230528/16094G015-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/2300628.html"> <b>教学教务管理人员是干什么的 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/3988776.html" title="联想yoga2"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="联想yoga2" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/3988776.html"> <b>联想yoga2 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/973277.html" title="如何选择抗体稀释液? 抗体稀释液"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="如何选择抗体稀释液? 抗体稀释液" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/973277.html"> <b>如何选择抗体稀释液? 抗体稀释液 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/4021022.html" title="下载导航地图,导航地图下载"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="下载导航地图,导航地图下载" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/4021022.html"> <b>下载导航地图,导航地图下载 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/2526229.html" title="流媒体后视镜可以当行车记录仪吗 行车记录仪有必要买流媒体吗"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="流媒体后视镜可以当行车记录仪吗 行车记录仪有必要买流媒体吗" src="http://img.readke.com/230615/04510TJ7-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/2526229.html"> <b>流媒体后视镜可以当行车记录仪吗 行车记录仪有必要买流媒体吗 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/1793451.html" title="炒苔菜用不用焯水,苔菜用不用焯水再炒"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="炒苔菜用不用焯水,苔菜用不用焯水再炒" src="http://img.readke.com/230426/1215323117-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/1793451.html"> <b>炒苔菜用不用焯水,苔菜用不用焯水再炒 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/2428543.html" title="昆明工业职业技术学院怎么样"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="昆明工业职业技术学院怎么样" src="http://img.readke.com/230604/23541L3P-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/2428543.html"> <b>昆明工业职业技术学院怎么样 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/0Z91RB52021.html" title="(152)感赏女儿|(152)感赏女儿 2020-12-4"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="(152)感赏女儿|(152)感赏女儿 2020-12-4" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/0Z91RB52021.html"> <b>(152)感赏女儿|(152)感赏女儿 2020-12-4 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/3002849.html" title="桃子核发霉外面是好的还能吃吗"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="桃子核发霉外面是好的还能吃吗" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/3002849.html"> <b>桃子核发霉外面是好的还能吃吗 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/4149054.html" title="离散傅立叶分析,origin怎么进行傅立叶分析"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="离散傅立叶分析,origin怎么进行傅立叶分析" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/4149054.html"> <b>离散傅立叶分析,origin怎么进行傅立叶分析 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/1576764.html" title="次密接触者的一般接触者需要隔离吗"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="次密接触者的一般接触者需要隔离吗" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/1576764.html"> <b>次密接触者的一般接触者需要隔离吗 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/3034572.html" title="海带炖土豆的做法 海带炖土豆的做法窍门"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="海带炖土豆的做法 海带炖土豆的做法窍门" src="http://img.readke.com/230819/1642222N6-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/3034572.html"> <b>海带炖土豆的做法 海带炖土豆的做法窍门 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/2975608.html" title="大概的近义词 大概的近义词是什么 标准答案"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="大概的近义词 大概的近义词是什么 标准答案" src="http://img.readke.com/230811/01533V1Y-0-lp.jpg"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/2975608.html"> <b>大概的近义词 大概的近义词是什么 标准答案 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/2929817.html" title="合金筷子是塑料还是金属 合金筷子是什么材质"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="合金筷子是塑料还是金属 合金筷子是什么材质" src="http://img.readke.com/230804/13415B305-0-lp.png"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/2929817.html"> <b>合金筷子是塑料还是金属 合金筷子是什么材质 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/092223A562021.html" title="真我与假我"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="真我与假我" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/092223A562021.html"> <b>真我与假我 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/1632783.html" title="钢材包括哪些 钢材怎么分类"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="钢材包括哪些 钢材怎么分类" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/1632783.html"> <b>钢材包括哪些 钢材怎么分类 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/4198365.html" title="heos,黑色素瘤"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="heos,黑色素瘤" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/4198365.html"> <b>heos,黑色素瘤 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/0Z21315R2021.html" title="【家事】节如流水"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="【家事】节如流水" src="/images/defaultpic.gif"> </a> </div> <div class="item-content"> <h4 class="item-title"> <a href="/c/0Z21315R2021.html"> <b>【家事】节如流水 </b></a></h4> <div class="item-meta"> <div class="item-meta-right"> </div> </div> </div> </li> </ul> <p><br /><ul class="post-loop post-loop-list cols-4"><li><a href="/c/01064130a2022.html" title="Unix/Linux环境C编程入门教程|Unix/Linux环境C编程入门教程 1 Solaris 11 64bit环境搭建" target="_blank">Unix/Linux环境C编程入门教程|Unix/Linux环境C编程入门教程 1 Solaris 11 64bit环境搭建 </a></li> <li><a href="/c/01014004E2022.html" title="TcpIp|利用TCP/IP堆栈进行远程操作系统判别的方法" target="_blank">TcpIp|利用TCP/IP堆栈进行远程操作系统判别的方法 </a></li> <li><a href="/c/01014004C2022.html" title="Security...|hping2的使用方法. ..后边再添加其他工具..." target="_blank">Security...|hping2的使用方法. ..后边再添加其他工具... </a></li> <li><a href="/c/122IWWH021.html" title="unix|unix ls 命令" target="_blank">unix|unix ls 命令 </a></li> <li><a href="/c/122IWW42021.html" title="unix|文件权限问题 unix" target="_blank">unix|文件权限问题 unix </a></li> <li><a href="/c/122IWW22021.html" title="unix|secureCRT" target="_blank">unix|secureCRT </a></li> <li><a href="/c/12263VO42021.html" title="UNIX/LINUX|C++ Epoll的封装" target="_blank">UNIX/LINUX|C++ Epoll的封装 </a></li> <li><a href="/c/12263V4C2021.html" title="linux的系统时钟和硬件时钟不一致问题" target="_blank">linux的系统时钟和硬件时钟不一致问题 </a></li> <li><a href="/c/12263UZ62021.html" title="14|Linux下轻型文本编辑器Nano常用快捷键" target="_blank">14|Linux下轻型文本编辑器Nano常用快捷键 </a></li> </ul></p> <div class=entry-copyright> <p></p> </div> </div> <div class="entry-footer"> <div class="prev-next sb br mb clearfix"> <p class="post-prev fl ellipsis">上一篇:<a href='/c/12163B4A2021.html'>容器的多重嵌套</a> </p> <p class="post-next fr ellipsis">下一篇:<a href='/c/12163B4C2021.html'>我的第一个小项目</a> </p> </div> </div> </div> </article> </main> <aside class="sidebar"> <div class="widget widget_post_thumb"> <h3 class="widget-title"><span>更多...</span></h3> <ul> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/09101V4302021.html" title="梅花香自苦寒来"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="梅花香自苦寒来" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/09101V4302021.html" title="梅花香自苦寒来">梅花香自苦寒来</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/0Z112U3R021.html" title="百度智能云天工物联网支持多种类数据传输,MQTT助力数据、语音、视觉应用智能化"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="百度智能云天工物联网支持多种类数据传输,MQTT助力数据、语音、视觉应用智能化" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/0Z112U3R021.html" title="百度智能云天工物联网支持多种类数据传输,MQTT助力数据、语音、视觉应用智能化">百度智能云天工物联网支持多种类数据传输,MQTT助力数据、语音、视觉应用智能化</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/12303940U2021.html" title="4D习书之旅|4D习书之旅 第10章"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="4D习书之旅|4D习书之旅 第10章" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/12303940U2021.html" title="4D习书之旅|4D习书之旅 第10章">4D习书之旅|4D习书之旅 第10章</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/10293002162021.html" title="SpringBoot实现阿里云快递物流查询的示例代码"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="SpringBoot实现阿里云快递物流查询的示例代码" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/10293002162021.html" title="SpringBoot实现阿里云快递物流查询的示例代码">SpringBoot实现阿里云快递物流查询的示例代码</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/0ZGC23H021.html" title="最美的风景只能自己去欣赏"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="最美的风景只能自己去欣赏" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/0ZGC23H021.html" title="最美的风景只能自己去欣赏">最美的风景只能自己去欣赏</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/1121334N22021.html" title="使用git将本地代码提交到码云上去"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="使用git将本地代码提交到码云上去" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/1121334N22021.html" title="使用git将本地代码提交到码云上去">使用git将本地代码提交到码云上去</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/0Z91Q3X2021.html" title="开心的活着就挺好"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="开心的活着就挺好" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/0Z91Q3X2021.html" title="开心的活着就挺好">开心的活着就挺好</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/09252455T2021.html" title="如何挑选生腰果(海南腰果怎么分?)"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="如何挑选生腰果(海南腰果怎么分?)" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/09252455T2021.html" title="如何挑选生腰果(海南腰果怎么分?)">如何挑选生腰果(海南腰果怎么分?)</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/0Z21301R2021.html" title="相亲相爱的两宝"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="相亲相爱的两宝" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/0Z21301R2021.html" title="相亲相爱的两宝">相亲相爱的两宝</a></p> </div> </li> <li class="item"> <div class="item-img"> <a class="item-img-inner" href="/c/0ZGD4492021.html" title="炒股如炒菜"> <img width="480" height="300" class="attachment-default size-default wp-post-image j-lazy" alt="炒股如炒菜" src="/images/defaultpic.gif"> </a></div> <div class="item-content"> <p class="item-title"><a href="/c/0ZGD4492021.html" title="炒股如炒菜">炒股如炒菜</a></p> </div> </li> </ul> </div> </aside> </div> </div> <footer class="footer"> <div class="container"> <div class="clearfix"> <div class="footer-col footer-col-logo"> <!--<img src="/skin/images/logo-footer.png">--></div> <div class="footer-col footer-col-copy"> <ul class="footer-nav hidden-xs"> <li class="menu-item menu-item-706"><a href="/baike/">生活百科</a></li> <li class="menu-item menu-item-706"><a href="/it/">it技术</a></li> </ul> <div class="copyright"> <p>Copyright © 2017-2022 锐客网 <a href="http://beian.miit.gov.cn/" target="_blank" rel="nofollow">京ICP备11041112号-41</a> </p> </div> </div> <div class="footer-col footer-col-sns"> <div class="footer-sns"> </div> </div> </div> </div> </footer> <div class="action action-style-0 action-color-0 action-pos-1" style="bottom:15%;"> <div class="action-item gotop j-top"> <i class="web-icon wi action-item-icon"><svg aria-hidden="true"> <use xlink:href="#wi-arrow-up-2"></use> </svg></i></div> </div> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?79e4e485d34c6fc717489eaa10b314e3"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> </div> <script>var _web_js={};</script> <script src="/skin/js/index.js"></script> </body> </html>