Issue
I have a list of folders
$ ls -1 .
_dns
linux
mariadb
minio
mongodb
nginx
_postgresdb
_python
_rabbitmq
redis
sphinx
supervisor
$
I would like to have them in the lexicographic order (the order provide by e.g. the vim sort):
$
_dns
_postgresdb
_python
_rabbitmq
linux
mariadb
minio
mongodb
nginx
redis
sphinx
supervisor
$
I don't succeed to do that with the unix sort:
$ ls -1 . | sort
_dns
linux
mariadb
minio
mongodb
nginx
_postgresdb
_python
_rabbitmq
redis
sphinx
supervisor
$
even with options:
$ ls -1 . | sort -g
_dns
linux
mariadb
minio
mongodb
nginx
_postgresdb
_python
_rabbitmq
redis
sphinx
supervisor
$
$ ls -1 . | sort -b
_dns
linux
mariadb
minio
mongodb
nginx
_postgresdb
_python
_rabbitmq
redis
sphinx
supervisor
$
$ ls -1 . | sort -n
_dns
linux
mariadb
minio
mongodb
nginx
_postgresdb
_python
_rabbitmq
redis
sphinx
supervisor
$
Note: this question as been answered in a much better way in Unix sort treatment of underscore character
Solution
If you want a persistent solution you can export LC_COLLATE
$ ls -1 | sort
_dns
linux
mariadb
minio
mongodb
nginx
_postgresdb
_python
_rabbitmq
redis
sphinx
supervisor
$ export LC_COLLATE=C
$ ls -1 | sort
_dns
_postgresdb
_python
_rabbitmq
linux
mariadb
minio
mongodb
nginx
redis
sphinx
supervisor
Answered By - marioblz Answer Checked By - Gilberto Lyons (WPSolving Admin)