
Как вы, ребята, используете Linux, когда у вас много файлов с нелатинскими алфавитами или даже китайскими/японскими? У меня нет проблем с Windows, потому что я делаю все в графическом интерфейсе (трудно не делать этого), а альтернативный языковой ввод находится всего в нескольких минутах установки.
Однако в Linux я взаимодействую с ним в основном через консоль фреймбуфера/ssh, в основном потому, что я использую его именно для этого, и я не очень доверяю X, когда он мне нужен. И в этих средах ввод на китайском/японском языке для cd в этот каталог кажется невозможным - мне приходится использовать файловый менеджер с графическим интерфейсом в X, чтобы попасть туда и начать делать все, что мне нужно с файлами. Или это так? Есть ли решение этой проблемы?
решение1
Я могу легко вводить символы UTF-8 через ssh в окне Putty. Однако я обычно использую имена файлов ASCII и использую только символы UTF-8 в содержимом файлов. Это спасает меня от различных проблем (например, меня укусила нормализация unicode: у вас может быть 2 файла с визуально одинаковыми именами, потому что одно имя содержит + как один символ, а другое содержит их как два символа).
решение2
Большинство оболочек в наши дни поддерживаютавтодополнениеимен файлов, и мне удалось использовать это, чтобы избавиться практически от любого случайно созданного файла со странным именем*.
В Bash вы можете избежать ввода сложных имен файлов напрямую, экранируя их:
find . -print0 | while read -r -d ''; do printf %q "$REPLY"; done
* Попробуйте следующую команду для проверки:
touch -- $'--$`\\! *@ \a\b\E\f\r\t\v\"\' \n'