Переименовать регистр файлов в JFS без учета регистра

Я работал над файловой системой JFS, созданной с опцией -O (имена файлов без учета регистра).

Как я могу легко переименовать файл из Test.txt в test.txt?

Использование mv сообщает об ошибке:

mv: ‘Test.txt’ and ‘test.txt’ are the same file

И отчеты nautilus

The name “test.txt” is already used in this location. Please use a different name.
[ 116] Теперь я могу переименовать его в Test2.txt с последующим переименованием в test.txt

0
задан 20 October 2013 в 14:15

1 ответ

Вы можете использовать команду rename.

На самом деле это не встроенная команда оболочки, как mv, а жемчужный скрипт, который поставляется по умолчанию с большинством дистрибутивов GNU / Linux. Его использование немного отличается от mv, поскольку он использует регулярные выражения Pearl для сравнения со списком файлов.

Вот как это использовать в вашем случае:

rename 's/Test\.txt/test\.txt/' *

Команда s сообщает команде rename найти и заменить все вхождения Test.txt. с test.txt . Точки . внутри регулярного выражения должны быть экранированы с помощью \, поэтому имена файлов пишутся как Test\.txt. Обратите внимание на * в конце команды, что означает просмотр всех файлов в текущем каталоге.

Вы можете передать опцию -n команде rename, если хотите протестировать ее без внесения каких-либо изменений.

0
ответ дан 20 October 2013 в 14:15

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

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