<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>http://hlt.suda.edu.cn/index.php?action=history&amp;feed=atom&amp;title=Linux-2018-spring-5-29</id>
	<title>Linux-2018-spring-5-29 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="http://hlt.suda.edu.cn/index.php?action=history&amp;feed=atom&amp;title=Linux-2018-spring-5-29"/>
	<link rel="alternate" type="text/html" href="http://hlt.suda.edu.cn/index.php?title=Linux-2018-spring-5-29&amp;action=history"/>
	<updated>2026-09-21T03:48:17Z</updated>
	<subtitle>本wiki的该页面的版本历史</subtitle>
	<generator>MediaWiki 1.35.2</generator>
	<entry>
		<id>http://hlt.suda.edu.cn/index.php?title=Linux-2018-spring-5-29&amp;diff=475&amp;oldid=prev</id>
		<title>Liying：创建页面，内容为“一、复习 1、管道 pipeline  2、举例操作：    ls 2000/*/*.txt | wc -l    cat 2000/*/*.txt | egrep -o '^[0-9-]+' | sort | uniq :-o只输出匹配上的内...”</title>
		<link rel="alternate" type="text/html" href="http://hlt.suda.edu.cn/index.php?title=Linux-2018-spring-5-29&amp;diff=475&amp;oldid=prev"/>
		<updated>2018-05-29T03:57:19Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“一、复习 1、管道 pipeline  2、举例操作：    ls 2000&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;/*.txt | wc -l    cat 2000/：&lt;/span&gt;*.txt | egrep -o &amp;#039;^[0-9-]+&amp;#039; | sort | uniq :-o只输出匹配上的内...”&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;一、复习&lt;br /&gt;
1、管道 pipeline&lt;br /&gt;
&lt;br /&gt;
2、举例操作：&lt;br /&gt;
   ls 2000/*/*.txt | wc -l&lt;br /&gt;
   cat 2000/*/*.txt | egrep -o '^[0-9-]+' | sort | uniq :-o只输出匹配上的内容&lt;br /&gt;
   cat 2000/*/*.txt | egrep -o '^[0-9-]+' &amp;gt; unsorted&lt;br /&gt;
   cat 2000/*/*.txt | egrep -o '^[0-9-]+' | sort &amp;gt; sorted &lt;br /&gt;
   date; cat 2000/*/*.txt | egrep -o '^[0-9-]+' &amp;gt; /dev/null; date&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
二、新内容&lt;br /&gt;
&lt;br /&gt;
*diff &lt;br /&gt;
1、可以大文件，文本文件，没有排序;&lt;br /&gt;
2、d:删除（删除第一个文件）；a：增加（把第二个文件的内容增加到第一个文件）；c:替换&lt;br /&gt;
    diff sorted sorted_uniq：把第一文件做修改变成第二个文件&lt;br /&gt;
    diff sorted sorted_uniq | nl | less&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*过滤器 filter&lt;br /&gt;
&lt;br /&gt;
1、什么样的命令是过滤器？能用在管道中 | cmd |&lt;br /&gt;
&lt;br /&gt;
2、什么样的命令可以| cmd |？ cmd 对stdin文本按行处理，结果输出到stdout中。&lt;br /&gt;
   &lt;br /&gt;
    cat 2000/*/*.txt | egrep -o '^[0-9-]+' | sort &amp;gt; sorted ：egrep 就是一个filter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3、egrep ,sort :过滤器不是说一定要(而是能)从stdin到stdout。diff,cp不是过滤器。&lt;br /&gt;
&lt;br /&gt;
4、大部分linux命令的特点：过滤器不是说一定要(而是能)从stdin到stdout。&lt;br /&gt;
     1）如果没有argument，默认从stdin中读&lt;br /&gt;
     2）输出到stdout中&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*sort&lt;br /&gt;
    sort score.txt:跳过空格按数字排序&lt;br /&gt;
    sort -k 3 score.txt:根据第三列排序&lt;br /&gt;
    sort -n -k 3 score.txt&lt;br /&gt;
    sort -r -n -k 3 score.txt&lt;br /&gt;
    sort -r -n -u -k 3 score.txt:倒序&lt;br /&gt;
    sort -n -u -k 3 score.txt:排序的内容相同就删除&lt;br /&gt;
    sort -n -u -k 3 score.txt | uniq：一行完全一样才会删除&lt;br /&gt;
&lt;br /&gt;
*egrep&lt;br /&gt;
&lt;br /&gt;
   -o 抽取匹配内容&lt;br /&gt;
   -n 显示行号&lt;br /&gt;
   -v 取反&lt;br /&gt;
   -i大小写不敏感&lt;br /&gt;
   -r/-R/--recurisive dir必须给定文件夹参数&lt;br /&gt;
   egrep -r .&lt;br /&gt;
&lt;br /&gt;
*tr 是过滤器命令&lt;br /&gt;
  tr 'a-z' 'A-Z'：把小写换成大写&lt;br /&gt;
&lt;br /&gt;
*思考题：从当前文件夹中，所有(递归)包含3个连续数字的txt文件中，egrep -o '^[0-9-]+' |wc -l&lt;br /&gt;
     find . -name '*[0-9][0-9][0-9]*.txt' | less&lt;br /&gt;
     find . -name '*[0-9][0-9][0-9]*.txt' | xargs egrep -o '^[0-9-]+' |wc -l:将find的输出作为参数&lt;br /&gt;
     find . -name '*[0-9][0-9][0-9]*.txt' | xargs cat | egrep -o '^[0-9-]+' |wc -l&lt;br /&gt;
     cat `find . -name '*[0-9][0-9][0-9]*.txt'` | less :嵌套命令“~”下面的字符。&lt;/div&gt;</summary>
		<author><name>Liying</name></author>
	</entry>
</feed>