Нам часто приходится использовать пакетный поиск и замену в Linux. Здесь мы рассказываем об использовании командыsedдля поиска содержимого в файлах и его замены.

Формат синтаксиса

sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录`

Примеры

Далее мы ищем в текущем каталоге строки, содержащие "baidu", и заменяем строку "baidu" на "example". Выполните команду:

sed -i "s/baidu/example/g" `grep "baidu" -rl ./`

Далее давайте воспользуемся более сложным примером для пакетной замены URL libs.baidu.com на cdn.static.example.com:

sed -i "s/https:\/\/libs.baidu.com/https:\/\/cdn.static.example.com\/libs/g" `grep -rl "libs.baidu.com" ./`

Справочные команды