Perl - Bytter ut en fil
Utgave
Når jeg er i mitt favorittskall, bærer jeg erstatning via:
perl -pi-s '/ lib \ / nagios / lib64 \ / nagios / g' /etc/nagios/nrpe.cfg
Jeg vil gjerne bruke denne utskiftningsfilen, men bruk et skript i Perl, for ikke å kjøre på nettet
Og jeg finner det dumt å bruke a
system ("perl -pi-e 's / lib \ / nagios / lib64 \ / nagios / g' /etc/nagios/nrpe.cfg")
hvordan gjør jeg ideer?
Løsning
Du kan bruke dette:
$ file = "/etc/nagios/nrpe.cfg"; åpne (FILE, "<$ file"); @lines =; lukk FIL; åpne (STDOUT, "> $ file"); for (@lines) {s + lib / nagios + lib64 / nagios + g; skrive ut; } lukk STDOUT;
Merk
Takk til Dubcek for dette tipset.