如果我有一个文件,其中一些单词以大写字母开头,一些单词以小写字母开头,一些单词以数字或特殊字符开头。 using 是否sort -u input > output
将输入文件中的字母转换为输出文件中的小写字母?
出于某种原因,这似乎发生在我身上。但是,如果没有,我需要一种方法来首先转换大写字母首字母(如果发现太小)。
答案1
sort
不改变大小写,也不sort
改变除排序之外的数据,尽管sort -u
这会删除重复项。
$ for demochar in a b c A B C Ɓ ƀ À à; do printf "%s\n%s\n" "$demochar" "$demochar"; done ) | shuf > input1
$ sort -u input1 > input2
$ sort -uf input1 > input3
$ paste input1 input2 input3
B A a
ƀ B B
C C C
C a à
B b ƀ
b c Ɓ
à À
a à
à ƀ
c Ɓ
c
A
ƀ
Ɓ
a
b
Ɓ
A
À
À
sort -f
将要为了比较的目的,将所有内容强制为大写,但它不会更改输出的实际数据。从手册:
-f
,--ignore-case
在比较之前将所有小写字符转换为其等效的大写字符,即执行与大小写无关的排序。