2015-03-03 5 views
-2

Мне нужна команда для переименования нескольких файлов на моем сервере. В настоящее время я могу использовать SSH переименовать ихКак переименовать несколько файлов?

C++_Concurrency_in_Action.pdf_1.png 
C++_Concurrency_in_Action.pdf_10.js 
C++_Concurrency_in_Action.pdf_107.png 

Мне нужно заменить ++ с _ и я использую эту команду rename 's/\+/_/g' *

должно быть что-то неправильно в моей команде.

Любая помощь?

+1

Есть ли у нас информация о вашем сервере? Вы используете Linux? Windows Server? Единственное, о чем я могу думать, это создать какой-то исполняемый скрипт, который имеет цикл for и выполняет итерацию всех файлов. Затем вы можете использовать ssh и просто выполнить скрипт. Не уверен, что это то, что вы ищете или нет ... –

+0

bspymaster; У меня есть сервер Linux, и я об этом задумал, и найденная версия переименования может сделать это, используя perlexper. Я добавил регулярное выражение, но это не сработало. Я подозреваю, что проблема связана с регулярным выражением –

ответ

0

@Rana, используйте спецсимволы и изменить команду переименовать следующим образом:

rename 's/\\+/_/g' * 

Это должно заменить все + с _ во всех имен файлов.

+0

Я думаю, что одной косой черты достаточно для ускорения специальных символов в Regex? например, «переименовать»/\ +/_/g '* " –