使用bash脚本对文件中的数据进行排序

使用bash脚本对文件中的数据进行排序,bash,shell,Bash,Shell,我有以下文件: # cat /var/data/wlan_cells.log "Tech 1" "57" "-67" "0" "GUEST01" "52" "-69" "0" "SWSGP01" "52" "-69" "0" "GateAP" "100" "-39" "0" "AP_9 test" "78" "-59" "0" "surf" "13" "-85" "0" "Tech 2" "18" "-83" "0" 如何根据信号质量(第二个值)对线路进行排序? 预期结果: # cat /va

我有以下文件:

# cat /var/data/wlan_cells.log
"Tech 1" "57" "-67" "0"
"GUEST01" "52" "-69" "0"
"SWSGP01" "52" "-69" "0"
"GateAP" "100" "-39" "0"
"AP_9 test" "78" "-59" "0"
"surf" "13" "-85" "0"
"Tech 2" "18" "-83" "0"
如何根据信号质量(第二个值)对线路进行排序? 预期结果:

# cat /var/data/wlan_cells.log
"GateAP" "100" "-39" "0"
"AP_9 test" "78" "-59" "0"
"Tech 1" "57" "-67" "0"
"GUEST01" "52" "-69" "0"
"SWSGP01" "52" "-69" "0"
"Tech 2" "18" "-83" "0"
"surf" "13" "-85" "0"
我会用

sort -t\" -k4nr 
i、 e.按
拆分为列,使用第四列,按相反顺序进行数字排序。

我会使用

sort -t\" -k4nr 

i、 e.按
”拆分为列,使用第四列,按相反顺序进行数字排序。

希望使用AWK(它适合这类事情)得到优雅的解决方案。但这更好。我喜欢它,即使我不理解:)这个命令会将日志中的每一行拆分为列。每次看到“符号”时,都会创建一个新列。因此,例如,在第一行中,列将是:一个空列(因为第一个符号是“met”,第二列将是Tech 1。第三列将是空格。第四列将是57。然后,sort命令对第四列进行排序(信号质量)对于日志行。我们期望使用AWK(它适合于这类事情)提供优雅的解决方案。但这更好。我喜欢它,即使我不理解它:)该命令将日志的每一行拆分为列。每次看到“符号”时都会创建一个新列。因此,例如,在第一行中,列将是:一个空列(因为第一个符号为“met”),第二列将是Tech 1。第三列将是空格。第四列将是57。然后,sort命令对日志行的第四列(信号质量)进行排序。