Bash 什么';在排序上,-n和-g的区别是什么?
根据手册页,Bash 什么';在排序上,-n和-g的区别是什么?,bash,sorting,Bash,Sorting,根据手册页,-n选项通过“字符串数值”进行比较,-g通过“一般数值”进行比较。这两者有什么区别?根据源代码,以下是三种数字排序: 数字:用可选小数点处理数字字符串,但不使用指数表示法 通用数字:处理指数表示法中的数字,也处理十六进制,无穷大。。(比照曼斯特罗德) human_numeric:按带有SI或IEC前缀的人类可读单位进行排序 以下是一些例子: $ sort /tmp/tosort-gen 0 0x0a 1 100 1e1 1e2 1k 1M 2e3 INF $ sort -
-n
选项通过“字符串数值”进行比较,-g
通过“一般数值”进行比较。这两者有什么区别?根据源代码,以下是三种数字排序:
- 数字:用可选小数点处理数字字符串,但不使用指数表示法
- 通用数字:处理指数表示法中的数字,也处理十六进制,无穷大。。(比照曼斯特罗德)
- human_numeric:按带有SI或IEC前缀的人类可读单位进行排序
$ sort /tmp/tosort-gen
0
0x0a
1
100
1e1
1e2
1k
1M
2e3
INF
$ sort -h /tmp/tosort-gen
0
0x0a
INF
1
1e1
1e2
2e3
100
1k
1M
$ sort -g /tmp/tosort-gen
0
1
1k
1M
0x0a
1e1
100
1e2
2e3
INF
从中,请参见“回答好的问题”部分中要避免的类别之一“……以前已经被问过并回答过多次”。