Рассматривайте Ruby как альтернативу Perl. Он украл большинство однострочных аргументов командной строки Perl (-i
, -p
, -l
, -e
, -n
) и автоматических установок $_
для вас, как это делает Perl, и обладает большим количеством регулярных выражений. Кроме того, синтаксис Ruby может быть более удобным и легким для чтения или записи, чем в Perl или sed. (Или нет, в зависимости от ваших вкусов.)
ruby -pi.bak -e '$_.gsub!(/foo|bar/){|x| x.upcase}' *.txt
против
perl -pi.bak -e 's/(foo|bar)/\U\1/g' *.txt
Во многих случаях при работе с однострочниками производительности недостаточно для того, чтобы заботиться о том, используете ли вы легкий sed, тяжелый Perl или более тяжелый Ruby. Используйте все, что проще всего написать.