如何使用awk按列3sorting

我有一个像这样的文件(user.csv)

ip,hostname,user,group,encryption,aduser,adattr 

要按用户打印所有栏目sorting,

我尝试了awk -F ":" '{print|"$3 sort -n"}' user.csv ,它不起作用。

如何sort

 sort -t, -nk3 user.csv 

哪里

  • -t, – 将你的分隔符定义为。

  • -n – 给你数字sorting。 添加,因为你试图添加它。 如果你的用户字段只是文本,那么你不需要它。

  • -k3 – 定义字段(键)。 用户是第三个领域。

  1. 使用awk将用户ID放在前面。
  2. 分类
  3. 使用sed删除重复的用户ID,假设用户ID不包含任何空格。

     awk -F, '{ print $3, $0 }' user.csv | sort | sed 's/^.* //' 

尝试这个 –

 awk '{print $0|"sort -t',' -nk3 "}' user.csv 

要么

 sort -t',' -nk3 user.csv 

您可以select一个分隔符,在这种情况下,我select冒号并打印第一列,按字母顺序sorting。

 awk -f\: '{print $1|"sort -u"}' /etc/passwd 
 awk -F, '{ print $3, $0 }' user.csv | sort -nk2 

和相反的顺序

 awk -F, '{ print $3, $0 }' user.csv | sort -nrk2