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

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

Ответить
Настройки темы
CMD/BAT - [решено] Выполние команды DIR в файлик (список до указанной буквы алфавита)

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


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

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


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

Прошу помощи в написании скрипта (cmd или vbs) по выводу содержимого каталога D:\work\ (в нем папки с английскими именами фамилий сотрудников) в файлик D:\MyDir.txt со следующими условиями:
1) файлик D:\MyDir.txt должен быть записан полный путь (D:\work\Ivanov D:\work\Sidorov и тд) с новой строки
2) Список перечисленных папок должен заканчиваться какой-либо буквой англиского алфавита и задаваться параметром, т.е. выведены полные пути от буквы A до буквы (например) L (включительно) - D:\work\Makarov в список уже не должно попасть.

В конечном итоге в файле должно быть примерно следующее:
D:\work\Alekseev
D:\work\Borisov
D:\work\Durov
D:\work\Leonov

Этот файл мне нужен для передачи его в RAR в качестве тех папок, которые необходимо заархивировать. Дело в том, что обновление архива с 50% сжатием "весом" 30Гб занимает 4 часа - а это долго. А если я списком разнесу по двум-трем серверам, то параллельно это будет выполнено быстро.
Можно конечно вручную его создать, но содержимое каталога D:\work\ меняется и в один прекрасный момент мона чьи-нибудь данные не заархивировать.

Если есть иной способ решения этой задачи - поделитесь, пожалуйста.

Отправлено: 12:48, 03-06-2009

 


Moderator


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

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


Код: Выделить весь код
@Echo Off
SetLocal EnableExtensions EnableDelayedExpansion

Set SrcDir=D:\work
Set OutFile=D:\MyDir.txt

Set FirstChar=A
Set LastChar=L

Del /F /Q %OutFile% 2>nul
For /F "Delims=" %%I In ('Dir /AD /B %SrcDir%') Do (
  Set C=%%I
  Set C=!C:~0,1!
  If /I !C! Geq %FirstChar% If /I !C! Leq %LastChar% (
    Echo %SrcDir%\%%I>>%OutFile%
  )
)
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:42, 03-06-2009 | #2



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

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


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


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

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


Petya V4sechkin, БОЛЬШОЕ СПАСИБО!

Тему можно закрыть!

Отправлено: 15:10, 03-06-2009 | #3



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Wireless - Соединение двух Маршрутизаторов Wi-Fi <D-Link DIR-300 и DIR-320> Limp-IP Сетевое оборудование 8 04-08-2010 17:58
Доступ - Доступ через сеть к указанной общей папке Makcermakcer Microsoft Windows Vista 0 29-08-2009 23:06
[решено] NOD32 "полечил" файлик msdtc.exe s_admin Microsoft Windows NT/2000/2003 8 23-03-2009 11:51
[решено] Выложите плиз файлик shell32.dll из сборки 7000. di2blo Microsoft Windows 7 1 18-02-2009 00:55
Интернет - [решено] система стала игнорировать hosts файлик. sp2 justy Microsoft Windows 2000/XP 9 07-03-2008 01:25




 
Переход