Как в Linux выполнить рекурсивную замену имен файлов и каталогов, сохранив существующий регистр?
Например, я нахожусь в каталоге, в котором есть два подкаталога с именами:
lastname
Lastname
Я хочу иметь возможность заменить их на "lastnamea" и "Lastnamea" соответственно. По сути, я хочу изменить их, сохраняя регистр. То же самое касается файлов.
решение1
Эта команда использует find для вывода списка абсолютных путей всех файлов в каталоге и подкаталогах. Вы можете использовать ls, чтобы просто указать текущий каталог. Xargs выполняет команды для того, что передано через stdin. -IX говорит заменить X на то, что было передано через stdin. Если в вашей версии xargs нет -I, используйте --replace=X Надеюсь, это поможет!
найти . | xargs -IX mv X Xa