![]() |
Помогите сделать такой скрипт на perl
Помогите плз сделать такой вот скрипт на perl.
Имеется текстовый файл. В нем много текста. Задача: запустить скрипт, который произведет фильтрацию. Фильтрация такая: если в строке встречается слово LINUX, то строчку пропускаем. если нет, то удаляем. |
Код:
open(file,"file.txt"); |
Gike
Что-то у меня твой скрипт выдает ошибку... Вот такой накатал, проверил - вроде работает... Код:
open FILE, "file.txt";Gike, извини. Все работает. Просто скрипт форума немного накосячил в коде - отказался выводить FILE в угловых скобках после $str= у тебя, и @indata= - у меня. :idontnow: З.Ы. Итить... Третий раз правлю... :( |
:( одна и таже ошибка :( в обоих скриптах
./script: line 1: syntax error near unexpected token `file,"qw.txt"' ./script: line 1: `open(file,"qw.txt");' |
Просто Я
Эээ... У эти меня скрипты работают оба. Попробуй имя файла брать не в кавычки ("), а в апострофы ('). Или писать директивы open и close без скобок (хотя, какая, собственно, разница? :idontnow: ). |
блин.. что ж такое... :(
|
извини за глупый вопрос но в начале ты приписал #/usr/bin/perl или как там у тебя на машине надо?
|
о, все :)
а теперь такая просьба :) а нельзя ли его переделать как-то, чтобы он проверял строку сразу на 2 слова. если одно из двух в строке имеется, то ее оставляем |
Просто Я
Есессно, например: Код:
print FILE $_ if $_ =~ /(LINUX)|(WINDOWS)/; |
А я люблю использовать grep :) :
open FILE, "file.txt"; my @indata = grep( /(LINUX)|(WINDOWS)/, < FILE>); close FILE; open FILE, ">file.txt"; print FILE @indata; close FILE; |
если уж про grep: :yees:
$ grep LINUX our.file > /tmp/tmp.file $ mv /tmp/tmp.file our.file |
| Часовой пояс GMT +4, время: 05:24. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.