Я работаю в Linux, команда sort
возвращает не так, как ожидалось.
Входной текст:
$ cat input.txt
rep1_1.fq
rep1_2.fq
rep12_1.fq
rep12_2.fq
Команда и вывод:
$ sort input.txt
rep1_1.fq
rep12_1.fq
rep12_2.fq
rep1_2.fq
$ sort --version
sort (GNU coreutils) 8.28
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Mike Haertel and Paul Eggert.
После сортировки я ожидал, что rep1_2.fq
будет после rep1_1.fq
, но результат будет другим.
Решено
согласно совету @Federico klez Culloca, используйтеLC_ALL=C
$ LC_ALL=C sort input.txt
rep12_1.fq
rep12_2.fq
rep1_1.fq
rep1_2.fq
Отредактировано
используйте LC_ALL=C
и исправьте сортировку файлов в каталоге.
в случае, если втекущий каталог:
$ LC_ALL= ls
rep1_1.fq rep12_1.fq rep12_2.fq rep1_2.fq
$ LC_ALL=C ls
rep12_1.fq rep12_2.fq rep1_1.fq rep1_2.fq