sort命令属于linux程序,可以打印输出文本文件行且按照排序连接全部文件。sort命令用空格作为字段分隔符,把整个输入文件作为排序键。Sort命令并不是对文件进行排序,而是打印排序后的输出直到重新定向输出。下面华纳云为大家分享关于linux中sort命令的使用实例。
先创建一个指定文本“tecmint.txt ”文件,这个文件用来执行sort命令。目录示例为“ /home/$USER/Desktop/tecmint ”
以下命令中的e选项启用反斜杠的解释并告诉echo 命令将每个字符串写入新行:
echo -e "computer\nmouse\nLAPTOP\ndata\nRedHat\nlaptop\ndebian\nlaptop" > tecmint.txt
使用sort命令之前,先用cat命令查看当前文件内容和排序:
cat tecmint.txt
命令“ sort tecmint.txt ”用于按字母升序重新排列文件中的行,如果有重复的行,它将保留每个唯一行的一个副本。
sort tecmint.txt
上述命令不对文本文件的内容进行排序,而只是在终端上显示排序后的输出进行排序。
将排序后的输出文件重新定向到新文件“sorted.txt”。原始文件保持不变,而排序后的内容存储在单独的文件中。要验证内容,请使用cat 命令。
sort tecmint.txt > sorted.txt
cat sorted.txt
可以按照相反顺序来排序文件。以下命令用于对文本文件“ tecmint.txt ”的行进行反向排序,这意味着它将按字母降序排列行,然后将排序后的输出重定向到名为“ reversesorted.txt ”的新文件:
sort -r tecmint.txt > reversesorted.txt
cat reversesorted.txt
以下命令用于使用ls 命令以详细的长格式视图列出用户主目录(“ /home/$USER ”)的内容,然后将此目录列表重定向到位于用户桌面上名为“ lsl.txt ”的文本文件,具体来说是在“ tecmint ”目录中。
ls -l /home/$USER > /home/$USER/Desktop/tecmint/lsl.txt
cat lsl.txt
使用`-n`和`-k2`选项对文件`lsl.txt`按第二列数值排序,结果存入`lsl.txt-k2`。
sort -nk2 lsl.txt
根据文件“ lsl.txt ”中每行第九个字段的值按升序对行进行排序。选项'-k9'指定应根据第九个字段进行排序。
sort -k9 lsl.txt
“ ls ”和“ sort ”命令相结合,以长列表格式列出用户主目录的内容,然后将目录列表通过管道传输到'sort -nk5',后者根据第五列(代表文件大小)的值对列表进行排序。
ls -l /home/$USER|sort -nk5
按字母升序对文件“ tecmint.txt'-u' ”中的行进行排序,并使用代表“ unique ”的选项删除任何重复的行,并确保在排序的输出中保留唯一的行。
$ cat tecmint.txt
$ sort -u tecmint.txt
`ls -la ~` 命令列出用户主目录(包括隐藏文件)的详细信息,并将输出重定向到桌面的“tecmint”文件夹中的“lsla.txt”文件。
ls -lA /home/$USER > /home/$USER/Desktop/tecmint/lsla.txt
cat lsla.txt