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

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

Ответить
Настройки темы
CMD/BAT - [решено] Помощь с sort

Ветеран


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


Конфигурация

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


Имеется текстовый файл со строками типа
Цитата:
KB2687324--20121020--C:\WINDOWS\Installer\2295d.msp
KB2687626--20120712--C:\WINDOWS\Installer\2292a.msp
KB2584052--20110917--C:\WINDOWS\Installer\228b8.msp
KB953432--20110917--C:\WINDOWS\Installer\228b8.msp
KB2687483--20121020--C:\WINDOWS\Installer\22989.msp
KB2289163--20110123--C:\WINDOWS\Installer\227e5.msp
KB975051--20110123--C:\WINDOWS\Installer\2275a.msp
KB2284695--20110123--C:\WINDOWS\Installer\2275a.msp
Необходимо создать другой текстовый файл, в котором строки будут отсортированы по нарастающей по значению первого токена, сначала шестизначные КВ (KB953432), затем семизначные КВ (KB2284695)

Отправлено: 14:35, 20-08-2013

 

Ветеран


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

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


sov44, общий принцип тот же (тупо, без оптимизаций):
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

>nul copy nul "0002.txt"

for /f "usebackq tokens=1* delims=-" %%i in (`type "0001.txt" ^| findstr.exe /r /c:"KB......--" ^| sort.exe`) do (
	>>"0002.txt" echo %%i--%%j
)

for /f "usebackq tokens=1* delims=-" %%i in (`type "0001.txt" ^| findstr.exe /r /c:"KB.......--" ^| sort.exe`) do (
	>>"0002.txt" echo %%i--%%j
)

endlocal
exit /b 0


Update: действительно, тупо.
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

>"0002.txt" (
	type "0001.txt" | findstr.exe /r /c:"KB......--" | sort.exe
	type "0001.txt" | findstr.exe /r /c:"KB.......--" | sort.exe
)

endlocal
exit /b 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:04, 20-08-2013 | #2



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

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


Ветеран


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

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


Iska, здорово, как я сразу не догадался (рыл в сторону sort /+3)

Отправлено: 16:58, 20-08-2013 | #3


Ветеран


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

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


sov44, ну, gora же делал что-то подобное с месяц-два назад — по-моему, для Вас же.

Отправлено: 17:16, 20-08-2013 | #4



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
помощь сергей лт Тест-форум 2 17-03-2011 18:34
Debian/Ubuntu - Помощь. suntaxis Общий по Linux 1 30-01-2011 16:43
Как вызвать медот Sort по типу VB из D6? St_Klaus Программирование и базы данных 1 11-01-2006 00:14




 
Переход