mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-12-17 16:34:32 +08:00
语法高亮,滚动条美化,设置页面调整
This commit is contained in:
@@ -3,9 +3,9 @@
|
||||
<h2 id="补充说明">补充说明</h2>
|
||||
<p><strong>sort命令</strong> 是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入。</p>
|
||||
<h3 id="语法">语法</h3>
|
||||
<pre><code>sort(选项)(参数)</code></pre>
|
||||
<pre><code class="language-bash">sort(选项)(参数)</code></pre>
|
||||
<h3 id="选项">选项</h3>
|
||||
<pre><code>-b:忽略每行前面开始出的空格字符;
|
||||
<pre><code class="language-bash">-b:忽略每行前面开始出的空格字符;
|
||||
-c:检查文件是否已经按照顺序排序;
|
||||
-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;
|
||||
-f:排序时,将小写字母视为大写字母;
|
||||
@@ -21,7 +21,7 @@
|
||||
<p>文件:指定待排序的文件列表。</p>
|
||||
<h3 id="实例">实例</h3>
|
||||
<p>sort将文件/文本的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。</p>
|
||||
<pre><code>root@[mail text]# cat sort.txt
|
||||
<pre><code class="language-bash">root@[mail text]# cat sort.txt
|
||||
aaa:10:1.1
|
||||
ccc:30:3.3
|
||||
ddd:40:4.4
|
||||
@@ -37,7 +37,7 @@ ddd:40:4.4
|
||||
eee:50:5.5
|
||||
eee:50:5.5</code></pre>
|
||||
<p>忽略相同行使用-u选项或者uniq:</p>
|
||||
<pre><code>[root@mail text]# cat sort.txt
|
||||
<pre><code class="language-bash">[root@mail text]# cat sort.txt
|
||||
aaa:10:1.1
|
||||
ccc:30:3.3
|
||||
ddd:40:4.4
|
||||
@@ -62,7 +62,7 @@ bbb:20:2.2
|
||||
eee:50:5.5
|
||||
</code></pre>
|
||||
<p>sort的-n、-r、-k、-t选项的使用:</p>
|
||||
<pre><code>[root@mail text]# cat sort.txt
|
||||
<pre><code class="language-bash">[root@mail text]# cat sort.txt
|
||||
AAA:BB:CC
|
||||
aaa:30:1.6
|
||||
ccc:50:3.3
|
||||
@@ -94,13 +94,13 @@ AAA:BB:CC
|
||||
# -n是按照数字大小排序,-r是以相反顺序,-k是指定需要爱排序的栏位,-t指定栏位分隔符为冒号</code></pre>
|
||||
<p><strong>-k选项的具体语法格式:</strong></p>
|
||||
<p>-k选项的语法格式:</p>
|
||||
<pre><code>FStart.CStart Modifie,FEnd.CEnd Modifier
|
||||
<pre><code class="language-bash">FStart.CStart Modifie,FEnd.CEnd Modifier
|
||||
-------Start--------,-------End--------
|
||||
FStart.CStart 选项 , FEnd.CEnd 选项
|
||||
</code></pre>
|
||||
<p>这个语法格式可以被其中的逗号<code>,</code>分为两大部分, <strong>Start</strong> 部分和 <strong>End</strong> 部分。Start部分也由三部分组成,其中的Modifier部分就是我们之前说过的类似n和r的选项部分。我们重点说说<code>Start</code>部分的<code>FStart</code>和<code>C.Start</code>。<code>C.Start</code>也是可以省略的,省略的话就表示从本域的开头部分开始。<code>FStart.CStart</code>,其中<code>FStart</code>就是表示使用的域,而<code>CStart</code>则表示在<code>FStart</code>域中从第几个字符开始算“排序首字符”。同理,在End部分中,你可以设定<code>FEnd.CEnd</code>,如果你省略<code>.CEnd</code>,则表示结尾到“域尾”,即本域的最后一个字符。或者,如果你将CEnd设定为0(零),也是表示结尾到“域尾”。</p>
|
||||
<p>从公司英文名称的第二个字母开始进行排序:</p>
|
||||
<pre><code>$ sort -t ' ' -k 1.2 facebook.txt
|
||||
<pre><code class="language-bash">$ sort -t ' ' -k 1.2 facebook.txt
|
||||
baidu 100 5000
|
||||
sohu 100 4500
|
||||
google 110 5000
|
||||
@@ -108,7 +108,7 @@ guge 50 3000
|
||||
</code></pre>
|
||||
<p>使用了<code>-k 1.2</code>,表示对第一个域的第二个字符开始到本域的最后一个字符为止的字符串进行排序。你会发现baidu因为第二个字母是a而名列榜首。sohu和 google第二个字符都是o,但sohu的h在google的o前面,所以两者分别排在第二和第三。guge只能屈居第四了。</p>
|
||||
<p>只针对公司英文名称的第二个字母进行排序,如果相同的按照员工工资进行降序排序:</p>
|
||||
<pre><code>$ sort -t ' ' -k 1.2,1.2 -nrk 3,3 facebook.txt
|
||||
<pre><code class="language-bash">$ sort -t ' ' -k 1.2,1.2 -nrk 3,3 facebook.txt
|
||||
baidu 100 5000
|
||||
google 110 5000
|
||||
sohu 100 4500
|
||||
|
||||
Reference in New Issue
Block a user