Скажите 'ls' виду обычными кодами ASCII, не “разумно”

У меня есть пара файлов и ls сортирует их как это:

a
_b
c

но я хочу иметь

_b
a
c

Как я могу сделать это?

13
задан 10 June 2011 в 06:01

3 ответа

Как одноразовая команда можно сделать это:

LC_COLLATE=C ls

Или можно добавить export LC_COLLATE="C" к Вашему .bashrc для создания этого постоянным (может иметь неожиданные результаты, сортирующие в другом месте).

Больше информации о форумах Ubuntu.

9
ответ дан 23 November 2019 в 03:21

На всякий случай нет встроенного способа сделать это, Вы могли использовать простую замену для sort:

#!/usr/bin/env python

import sys

for i in sorted(sys.stdin):
    sys.stdout.write(i)

Сохраните его, например, в /bin/pysort и сделайте это исполняемым файлом (sudo cp whatever.py /bin/pysort и sudo chmod a+x /bin/pysort), и выполненный это как ls | pysort:

stefano@lenovo:~/t$ ls | pysort
_b
a
c
6
ответ дан 23 November 2019 в 03:21

был бы ls | sort не делают точно, в чем Вы нуждаетесь?

1
ответ дан 23 November 2019 в 03:21

Другие вопросы по тегам:

Похожие вопросы: