Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Удалить лишние строки из txt

Ответить
Настройки темы
CMD/BAT - Удалить лишние строки из txt
aos aos вне форума

Новый участник


Сообщения: 15
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем доброго времени суток!

Есть такая задачка, Существует текстовый файл с кучей строк

Пример:


Нужно удалить те строки у которых после третьего числового столбца нет четвертого (то есть после столбца с тремя цифрами 010,007 и тд)

Заранее огромно спасибо!!!

Отправлено: 08:29, 07-06-2012

 

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


aos, посмотрел. Ошибка здесь:
Код: Выделить весь код
"C:\Program Files\Log Parser 2.2\LogParser.exe" "SELECT Text FROM 'Input.txt' WHERE TRIM(SUBSTR(Text, 97, 10)) <> ''" -i:TEXTLINE -iCodepage:1251 -q:on 1>"!sDestFile!"
— я банально забыл исправить жёстко заданное имя входного файла на переменную окружения. Я поправил исходный пакетный файл. Приношу Вам свои извинения. Пробуйте теперь.
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:42, 13-06-2012 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

aos aos вне форума Автор темы

Новый участник


Сообщения: 15
Благодарности: 0

Профиль | Отправить PM | Цитировать


Огромное спасибо!!! Все работает!

Отправлено: 06:55, 14-06-2012 | #22

aos aos вне форума Автор темы

Новый участник


Сообщения: 15
Благодарности: 0

Профиль | Отправить PM | Цитировать


Новый прикол, после отрабоки через какое то время самоочищается )))

Отправлено: 08:08, 14-06-2012 | #23


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


aos, поясните пожалуйста, что самоочищается, через какое именно время.

Отправлено: 14:01, 14-06-2012 | #24


Новый участник


Сообщения: 4
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Iska:
Продолжаю рекламировать Log Parser:
Код:
"C:\Program Files\Log Parser 2.2\LogParser.exe" "SELECT Text FROM 'Input.txt' WHERE TRIM(SUBSTR(Text, 97, 10)) <> ''" -i:TEXTLINE -iCodepage:1251 -qn >Output.txt
Output.txt … »
А подскажите, как удалить строчку со значением 0.00?


Код: Выделить весь код
Тюрин Д. С.;Алейск,Ширшова ул,5,55;630000002936;42039.52
Фатеева Л. Л.;Алейск,Ширшова ул,9,39;630000002937;1502.45
Вдонин А. В.;Алейск,Ширшова ул,16,414;630000003967;0.00
Юрченко Виталий Сергеевич;Алейск,им В.Олешко ул,82А,70;630000003968;2533.39
Рябцев Вадим Иванович;Алейск,Ширшова ул,3,12;630000003969;4186.19
Пыхтеев Кирилл Леонидович;Алейск,Ширшова ул,16,314;630000003970;5716.15
Смирнов Антон Николаевич;Алейск,Ширшова ул,16,215;630000003971;4804.42
Микрюков Вячеслав Владимирович;Алейск,Ширшова ул,16,312;630000003972;3697.96
Воропаева Ирина Николаевна;Алейск,Ширшова ул,15А,19;630000003973;1840.83
Троянова Нина Тихоновна;Алейск,Гвардейская ул,13,2;630000003974;0.00
Рыбин Максим Юрьевич;Алейск,Ширшова ул,23,2;630000003975;3685.36
Чеплыгин Сергей Александрович;Алейск,Ширшова ул,15,48;630000003976;7241.95

Отправлено: 13:27, 10-07-2012 | #25


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


naifrit, с помощью LogParser — напрямую никак: средство предназначено для извлечения данных, но не удаления (т.е., есть операция SELECT, но нет операции DELETE).

Но можно пойти от обратного: извлечь все строки, четвёртое поле которых не содержит «0.00»:
Код: Выделить весь код
"C:\Program Files\Log Parser 2.2\LogParser.exe" "SELECT Field1 AS FIO, Field2 AS Address, Field3 AS INN, SUBSTR(TO_STRING(Field4), 0, SUB(STRLEN(TO_STRING(Field4)), 4)) AS Summ FROM 'Source.txt' WHERE Summ <> '0.00'" -i:TSV -iSeparator:; -headerRow:OFF -nFields:4 -iCodepage:1251 -q:on -o:TSV -headers:OFF -oSeparator:;>Destination.txt

Отправлено: 17:08, 10-07-2012 | #26



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Удалить лишние строки из txt

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
удалить лишние файлы binders Вебмастеру 3 29-09-2011 17:50
Интерфейс - [решено] Как удалить лишние записи из "Программы и компоненты" zai Хочу все знать 17 18-08-2011 19:49
Интернет - [решено] Как удалить или скрыть лишние компьютеры в Сети? VeRtex-2010 Microsoft Windows 7 10 09-04-2011 23:53
7 / 2008 R2 - [решено] Как удалить лишние дистрибутивы Win7 rushen Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista 19 01-11-2010 22:08
Разное - [решено] Как удалить лишние виртуальные приводы? juliahka Хочу все знать 5 15-07-2010 06:49




 
Переход