Я пытаюсь написать сценарий, который в основном работает как слова Microsoft find> replace. Сначала он запрашивает два входа от пользователя. Первый для строк, которые нужно найти, а второй для строк, чтобы заменить старые. Несмотря на то, что это довольно прямолинейно, я также хочу подсчитать количество вещей, которые нужно заменить, и повторить, чтобы пользователь подтвердил это конкретное количество замен. Как я могу это сделать? До сих пор у меня есть это как поиск> заменить функцию:Как запросить пользователя при выполнении поиска> заменить в unix
for file in `find -name '*.sdf.new'`;
do
grep "$search" $file &> /dev/null
sed -i "s/$search/$replace/" $file
done
Если вы используете grep только для проверки наличия шаблона в файле, выполните следующие действия: 'if grep -q" $ search "" $ file "; затем '- он более эффективен в том, что он вернет успех сразу после первого матча вместо того, чтобы сканировать весь файл. Кроме того, вам не нужно хранить какой-либо вывод. –