按列长度排序
Sort by length of column
需要帮助使用 Unix 命令按第 4 列的长度排序。
示例数据(所有数据都是虚构的,并非实际数据)。
5032:Stack:overflows@business.com:123:JamesPeterson
3200:Admin:admin@me.com:12ej3dij23i2j32:AdminAdmin
1024:GregoryJames:greg@admin.com:12329232:GregJames
首选格式(因为第4列的长度最长)。
3200:Admin:admin@me.com:12ej3dij23i2j32:AdminAdmin
1024:GregoryJames:greg@admin.com:12329232:GregJames
5032:Stack:overflows@business.com:123:JamesPeterson
使用 awk
添加一个包含该列长度的列,按它排序,然后删除它。
awk -F: '{printf("%d %s\n", length(), [=10=])}' input.txt | sort -nr | cut -d' ' -f2- > output.txt
需要帮助使用 Unix 命令按第 4 列的长度排序。
示例数据(所有数据都是虚构的,并非实际数据)。
5032:Stack:overflows@business.com:123:JamesPeterson
3200:Admin:admin@me.com:12ej3dij23i2j32:AdminAdmin
1024:GregoryJames:greg@admin.com:12329232:GregJames
首选格式(因为第4列的长度最长)。
3200:Admin:admin@me.com:12ej3dij23i2j32:AdminAdmin
1024:GregoryJames:greg@admin.com:12329232:GregJames
5032:Stack:overflows@business.com:123:JamesPeterson
使用 awk
添加一个包含该列长度的列,按它排序,然后删除它。
awk -F: '{printf("%d %s\n", length(), [=10=])}' input.txt | sort -nr | cut -d' ' -f2- > output.txt