Почему ls заключает некоторые имена файлов в одинарные кавычки
Здесь на самом деле происходит то, что ls заключает в одинарные кавычки имена файлов с пробелами в них, с тем чтобы имена файлов можно было немедленно скопировать в другую команду или сценарий (то есть не нарушая их):

Это была очень непопулярная функция, введенная в версию 8.25 пакета coreutils в начале 2016 года, по согласованию с тремя разработчиками.
Аргументы, приведенные критиками изменения, заключаются в том, что вывод ls выглядит значительно более неприглядным, излишне расходится с почти полувековой традицией Unix и из-за того, как он был реализован (отказ от участия). совместимость с давно существующими скриптами и утилитами.
Поскольку эта функция была введена в пакет coreutils - от которого зависит практически каждый дистрибутив Linux и в состав которого входит ls - это изменение затрагивает все мыслимые системы Linux или Linux-подобные, от Arch Linux до Cygwin.
В случае с Debian и дистрибутивами, производными от Debian, такими как Ubuntu, изменение в какой-то момент было отменено после значительного протеста, а затем вновь восстановлено в октябре 2017 года.
Как ясно из этого ответа, лучший способ зарегистрировать свое разочарование в связи с этим изменением - связаться с разработчиками coreutils напрямую через отчет об ошибках и (вежливо) сделать аргумент, что они допустили огромную ошибку. Согласно принципам открытого исходного кода, критическая масса пользователей, уважительно, но непреклонно настаивающих на том, чтобы ls к поведению была восстановлена должным образом, теоретически должна быть достаточной, чтобы убедить разработчиков coreutils прислушиваться к сообществу Linux.
В более кратком, прагматическом смысле, есть несколько способов, которыми вы можете восстановить поведение ls до версии 8.25, оставив все выходные данные нетронутыми. Ниже приведены три способа сделать это для оболочки bash .
Восстановление поведения ls до версии 8.25
Установите переменную окружения QUOTING_STYLE на literal в файле ~/.bashrc
Найдите файл ~/.bashrc в папке HOME (/home/yourusername) и добавьте в него следующую строку:
export QUOTING_STYLE=literal
Сохраните файл, и изменения должны немедленно применяться ко всем новым терминалам bash которые вы открываете.
Вы также можете запустить source ~/.bashrc чтобы изменения были перенесены в любые окна терминала, которые были открыты во время внесения изменений.
Создать псевдоним для ls -N
Если вы предпочитаете псевдонимы переменным окружения, вы также можете создать псевдоним в .bashrc который использует новый ключ -N 8.25. Из ls --help:
-N, --literal печатать имена записей без кавычек
Для этого добавьте следующую строку в файл ~/.bashrc и сохраните ее:
alias ls="ls -N"
Запустите source ~/.bashrc чтобы новое изменение было передано на все открытые терминалы.
Используйте ключ командной строки -N (только для текущего запуска)
Если вы предпочитаете новое поведение по умолчанию для coreutils но хотите временно его обойти, вы также можете использовать ключ -N непосредственно в команде:
ls -N