An0xiety
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Maza_Faka Спасибо, дружище, за то, что подсказал SED.EXE, это просто отличная утилита. Тут неплохой мануал к ней на английском С помощью SED.EXE решил комментирование/раскомментирование строк начинающихся на LogFile таким образом: Код: sed -n "/LogFile/p" <input.txt | Findstr /i "^Logfile" >Nul 2>&1 && sed s/^LogFile/#LogFile/g <input.txt >output.txt || sed s/^#LogFile/LogFile/g <input.txt >output.txt | Теперь батник определяете раскоменнтирован ли LogFile, если да, то комментирует его (меняя LogFile на #LogFile), если LogFile закомментирован - то на оборот, удалит # перед LogFile. А с виндовыми средствами так и не сложилось, после комментирования, файл на выходе был без пустых строк, что сильно усложняло чтение лога. И еще , если в логе были команды CMD, то во время разбора по строкам они выполнялись !! кстати, с помощью SED.EXE можно делать grep : Код: равно Код: Есть 2 вопроса: 1) не подскажите, как игнорировать регистр в SED.EXE ? В Findstr это ключ /i, например. Я в мануале так и не нашел 2) можно ли читать из файла input.txt и после выполнения операций в этот же файл input.txt и записать? например Код: sed -n "/LogFile/p" <input.txt >input.txt | у меня просто стирает содержимое файла input.txt | Всего записей: 25 | Зарегистр. 16-02-2008 | Отправлено: 20:12 07-02-2009 | Исправлено: An0xiety, 20:22 07-02-2009 |
|