2014-08-27 3 views
0

Я пытаюсь использовать findutil/sed/grep в окнах, чтобы искать конкретный файл на всех дисках, искать подстроку в этом файле и заменять ее на новую подстроку ,find/sed найти файл и заменить подстроку

Из того, что я разработал, я должен сделать это один диск за раз, а затем CD на следующий диск и запустить снова. Я также получаю отсутствующий аргумент для «exec».

C:\findutils\bin\find ./ -name "particularfile.abc" -type f -exec "C:\SED\bin\sed.exe" -i -e 's/Old_String_Is_A_Url_With_/_ForwardSlash_in_it/New_String_Will_Have_Old_String_With_:PortNumber_Added/g' {} \; 

Может ли кто-нибудь помочь мне решить это, пожалуйста?

Благодаря

+0

не может помочь с 'exec' вопросом , но обычный поиск unix примет список начальных путей, попробуйте 'find c: \ path \ to \ start d: \ path \ to \ start ... -name ...'. Удачи. – shellter

ответ

1

Попробуйте использовать другой разделитель, СЭД может использовать что-то другое, чем прямые косые черты для замещения:

sed 's/string/changed/' таких же, как sed 's#string#changed#'