Jag har en massa textfiler. De är program till CNC maskiner.
Vag vet hur man använder "Sök och ersätt" i Word.
Det jag undrar är om det finns något sätt att söka efter tex "M30" och
ersätta med "M02" i alla filer i en hel katalog på engång.
Om du stoppar alla dessa filer i en katalog (DIR) och kör nedastående perl script så byter du ut alla M30 mot M02. Om du lägger till ett 'i' så att raden "$str =~ s/M30/M02/g;" blir "$str =~ s/M30/M02/gi;" så byter du även ut oberoende på case.
#!/usr/bin/perl -w
use strict;
my @files = <DIR/*>;
foreach (@files) {
my $file = $_;
open(IN, $file);
open(OUT, (">$file" . "_temp"));
my $str;
foreach (<IN>) {
$str .= $_;
}
$str =~ s/M30/M02/g;
print OUT $str;
close IN;
close OUT;
system "mv $file" . "_temp $file";
}
Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!