Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Хочу все знать » Сортировка...

Ответить
Настройки темы
Сортировка...

Аватара для skeletor

Старожил


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

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


Есть файл, содержащий список файлов. Нужно в этом файле отсортировать имена файлов по размеру самих файлов.
Как такое реализовать???

Отправлено: 16:35, 15-03-2007

 

Аватара для CyberDaemon

DOOMer


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

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


В файле только имена файлов или размеры тоже есть?

-------
"640 K ought to be enough for anybody" Bill Gates, 1981


Отправлено: 17:08, 15-03-2007 | #2



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

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


Аватара для skeletor

Старожил


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

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


Только имена. Но можно сделать и полный вывод с размером, датой и ещё кучу инфой.
В какую сторону копать???

Отправлено: 17:09, 15-03-2007 | #3


Аватара для Tigr

Хищник (ушел из жизни)


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

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


Изучи ключи команды DIR. Обрати особое внимание на ключи /O и /S. Полученное можно вместо экрана сохранить в файл.

Отправлено: 17:45, 15-03-2007 | #4


Аватара для skeletor

Старожил


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

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


Изучал. При таком использовании - имена файлов вписываются без полного пути. А мне надо именно с полным путём. Или Dir всё-таки может выводить полные пути к файлам?

Отправлено: 17:50, 15-03-2007 | #5


Аватара для Tigr

Хищник (ушел из жизни)


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

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


Могу предложить только dir /o:s /s > spisok.txt - далее написать макрос в Excel, к-й ко всем файлам будет добавлять имя папки.

-------
"Большинство болезней от некачественного блока питания" (Авиценна, X-XI век н.э.) || Если я не ответил Вам в теме, то отправьте, пожалуйста, ссылку на нее с комментариями через РМ || Кто я такой, чтоб не пить ! (© М. Жванецкий)


Отправлено: 18:43, 15-03-2007 | #6


Аватара для skeletor

Старожил


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

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


Проблема в том, что мне не все файлы нужны из екущей директории, а только некорые, которые удовлетворяют условиям.
dir /o:s /s - нормально работает, если нет поддиректорий - тогда для каждой подпаки сортировка идёт отдельно, а не в целом. И получается, что отсортированы файлы только в группах, которые и определяеют их принадлежность к подпапке.

Я добился того, что выводиться размер файла и его полный путь в одной строке (всё это выводиться в отдельный файл), отделённой табулятором. Появился вопрос - как отсортировать строки, по размерам цифр (размерам файлов)? При использовании комманды sort - идёт сортировка по алфавитно-цифровому признаку.

Отправлено: 18:52, 15-03-2007 | #7


Аватара для Tigr

Хищник (ушел из жизни)


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

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


Возможно, dir совершенно не подходит для такой цели. Почему бы не поискать альтернативу ?

-------
"Большинство болезней от некачественного блока питания" (Авиценна, X-XI век н.э.) || Если я не ответил Вам в теме, то отправьте, пожалуйста, ссылку на нее с комментариями через РМ || Кто я такой, чтоб не пить ! (© М. Жванецкий)


Отправлено: 18:54, 15-03-2007 | #8


Аватара для skeletor

Старожил


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

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


Теперь мне нужно осортировать файл по числам. То есть, не по алфавитному порядку, а именно по числовому, от наибольшего до наименьшего (в математическом понимании).
Може есть консольные утилиты для этого?

Отправлено: 19:21, 15-03-2007 | #9


Googler


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

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


можно к примеру выровнять числа по правому краю, а поле слева заполнить нулями... но для этого потребуется полноценный батник. Вот пример, который выводит размер и имя файла в текущем каталоге с подкаталогами:
Код: Выделить весь код
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION

SET TAB=0000000000000000
for /f %%i in ('dir /a-d /s /b *.*') do (
	CALL :LENGTH %%~zi
	CALL :PRINT %%~zi !LENGTH! %%i
	)
:LENGTH
SET LENBUF=%~1
SET LENGTH=0
IF "%~1"=="" GOTO :EOF
:LENGTH_START
SET /A LENGTH+=1
IF ""=="!LENBUF:~%LENGTH%,1!" GOTO :EOF
GOTO :LENGTH_START
:PRINT
SET SIZE=!TAB:~0,-%2!%1;%3
@echo !SIZE!
GOTO :EOF

Отправлено: 07:52, 16-03-2007 | #10



Компьютерный форум OSzone.net » Компьютеры + Интернет » Хочу все знать » Сортировка...

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] Автоматическая сортировка alex_dob Microsoft Windows 7 5 11-04-2011 22:46
CMD/BAT - Сортировка файлов kt626 Скриптовые языки администрирования Windows 2 28-03-2009 10:47
C/C++ - Сортировка в файле DENoszone Программирование и базы данных 28 16-07-2008 10:52
сортировка чисел slaine Вебмастеру 12 18-02-2006 20:17
Сортировка в Exсel Evita Хочу все знать 2 11-01-2006 14:24




 
Переход