Сообщения

Сообщения за июнь, 2012

Примеры замены подстроки в файлах на perl, sed, awk

Часто бывает нужно заменить какую то 1 строку в конфигурационном файле из скрипта. Чтобы далеко не ходить можно использовать следующие примеры скриптов. 1. Замена подстроки в одном файле с помощью sed $ cat ./file.txt I have three dogs. $ sed -e 's/dog/cat/g' ./file.txt I have three cats. 2. Замена подстроки в одном файле с помощью perl (вариант короче, но нужен perl) perl -e 's/dog/cat/g' -pi ./filename 3. Замена подстроки в нескольких файлах с помощью простого bash-скрипта #!/bin/bash f="cat" t="dog" for i in `egrep -r $f ./www | grep -v svn | cut -d ":" -f1` do     reg="s/$f/$t/g"     sed -e $reg $i > ${i}.bak     mv ${i}.bak $i     echo $i done 4. Замена подстроки в нескольких файлах с помощью perl одной командой egrep -rl "dog" ./ | xargs -i perl -pi -e 's/dog/cat/g' '{}' 5. Замена подстроки в нескольких файлах с помощью awk одной командой  awk '{gsub("cat...