Perl имеет параметр командной строки -0777 , чтобы вы могли читать все это в память.Как только вы это сделаете, вы можете использовать замену, которая использует \s*
для пробелов, и она будет пересекать границы новой строки.Если вы используете .
, обязательно используйте /s
в конце замещения.
Я не могу точно сказать, что вы хотите сопоставить, но общий принцип:
perl -0777 -i.orig -pe 's/foo/bar/gs' file1 file2 file3