Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 对文件中的第三个数字列进行反向排序_Linux_Bash_Shell_Sorting_Command Line Interface - Fatal编程技术网

Linux 对文件中的第三个数字列进行反向排序

Linux 对文件中的第三个数字列进行反向排序,linux,bash,shell,sorting,command-line-interface,Linux,Bash,Shell,Sorting,Command Line Interface,在bashshell脚本中,我有users.txt文件 sort-t:-k3n users.txt给了我 gg:g@g.g: ff:f@f.f:5 gdr:d@sd.ds:5 g:w@f.com:8 r:w@d.com:85 qaws:aaa@d.com:789 qaz:a@s.com:789 vcf:d@c.com:855 op:popo@ppoo.po:6465 zx:a@c.com:7845 az:a@aa.com:7894 w:a@a.com:7894 h:g@g.com:7899

在bashshell脚本中,我有users.txt文件

sort-t:-k3n users.txt
给了我



gg:g@g.g:
ff:f@f.f:5
gdr:d@sd.ds:5
g:w@f.com:8
r:w@d.com:85
qaws:aaa@d.com:789
qaz:a@s.com:789
vcf:d@c.com:855
op:popo@ppoo.po:6465
zx:a@c.com:7845
az:a@aa.com:7894
w:a@a.com:7894
h:g@g.com:7899
lp:l@l.com:8888
t:s@s.com:85474
dssdfsdf:fssdf@mbhkj.sdf:654654
u:f@g.comn:6546546
a:a@a.com:7894561
tt:t@t.t:1234567890
这没关系。但我需要第三列,其中只包含电话号码的倒序,即降序。如何做到这一点

我需要像

tt:t@t.t:1234567890
a:a@a.com:7894561
u:f@g.comn:6546546
dssdfsdf:fssdf@mbhkj.sdf:654654
t:s@s.com:85474
lp:l@l.com:8888
and so on...

您可以在订单列规范中添加
r
(缩写为“reverse”):

$ sort -t: -k 3nr  users.txt
# Here ---------^

您可以在订单列规范中添加
r
(缩写为“reverse”):

$ sort -t: -k 3nr  users.txt
# Here ---------^

我正在尝试
sort-r-t:-k3n users.txt
。我正在学习bash并制作简单的CRUD()。你能告诉我为什么
sort-t:-k=3nr users.txt
给了我错误吗?在“
man sort
”中,文档显示
-k,--key=KEYDEF
,因此我认为我们可以使用
=
运算符分配它。Ori正在尝试
排序-r-t:-k3n users.txt
。我正在学习bash并制作简单的CRUD()。你能告诉我为什么
sort-t:-k=3nr users.txt
给了我错误吗?在“
man sort
”中,文档显示
-k,--key=KEYDEF
,因此我认为我们可以使用
=
操作符来分配它