我正在尝试编写一个BASH脚本,根据文件中的特定字段以数字方式对文件内容进行排序。
该文件位于/etc/group
下。所有字段都以冒号分隔:
。我必须根据第3个字段以数字方式对/etc/group
的内容进行排序。
示例字段:daemon:*:1:root
我到目前为止所尝试的内容:
#!/bin/bash
sort /etc/group -n | cut -f 3-3 -d ":" /etc/group
这让我非常接近,但它只打印出第3个字段值的排序列表(因为cut
从字面上删除了剩余的字符串)。我试图保留其余部分,但仍按第3个字段内容排序。
答案 0 :(得分:1)
您可以像这样使用sort -t
:
sort -t : -nk3 /etc/group
-t :
告诉sort
使用字段分隔符:
-nk3
告诉sort
在字段#3上以数字方式对数据进行排序