假设我有以下 file.txt:
foo-a baz
foo bar
foo-c baz
如果我运行sort file.txt
,我会得到相同的输出:
foo-a baz
foo bar
foo-c baz
由于(space) 在 ASCII 中位于前面
-
,所以我期望输出为:
foo bar
foo-a baz
foo-c baz
事件 ifsort
查看整个单词,我仍然希望foo
出现在 和foo-a
之前foo-c
。
我尝试过sort -d
(字典)、 sort -g
(一般数字)和sort -h
(人类数字)但没有成功。有没有办法使用排序获得我想要的顺序?否则,使用另一个基本实用程序(我知道使用 python、perl、ruby 等很容易做到,但我正在编写一个需要可移植的 shell 脚本)。