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

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

Ответить
Настройки темы
Любой язык - [решено] Удалить (перенести) все папки, кроме начинающихся с цифры (цифр)

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


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

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


Приветствую, друзья!
Неделю бьюсь. Прошу помочь с скриптом.
Есть папка, в которой находятся папки с номерами заказов, например 54879. Папку захламляют чем попало. Работает скрипт (VBS), который каждую минуту удаляет все папки вне файлов.
Нужен скрипт, который будет проверять папку D:/ZAKAZ и при появлении в ней папки, начинающейся НЕ с цифры, переносить эту папку в D:/MUSOR. Более продвинутая хотелка, если можно. При появлении папки, начинающейся не с пяти цифр, переносить в мусор.
Спасибо за неоднократную помощь

Отправлено: 15:50, 04-05-2018

 

Ветеран


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

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


Цитата Wrongbee:
Папку захламляют чем попало. »
Кто захламляет? Как именно захламляет? Какие оргмеры принимаются для противодействия этому?

Цитата Wrongbee:
удаляет все папки вне файлов. »
Это, простите, как? Файл не может являться контейнером.

Цитата Wrongbee:
Работает скрипт (VBS), »
Покажите его код. Опишите условия его применения, ибо одновременная работа двух скриптов одинаковой направленности над одним каталогом может приводить к непредсказуемым последствиям.

Цитата Wrongbee:
и при появлении в ней папки, начинающейся НЕ с цифры, переносить эту папку в D:/MUSOR. Более продвинутая хотелка, если можно. При появлении папки, начинающейся не с пяти цифр, »
Определитесь — то или то нужно. «Продвинутости» во втором случае по сравнению с первым нет ни малейшей.

Отправлено: 16:03, 04-05-2018 | #2



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

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


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


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

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


Исправляюсь. Есть папка d:\ZAKAZ. На каждый новый заказ заводится папка с именем типа "25647_Заказчик". Хотелось бы оставлять все папки, имя которых начинается с пяти цифр (дальше неважно). И переносить все остальные папки в D:\Musor

Пример. Папки должны остаться
"18345"
"27483_браво"
"98273 Альфа".

Папки (имена) должны быть перемещены в мусор
"Браво_23424"
"2734"
"Моя скачка" и тд

На данный момент в планировщике работает батник, который удаляет все файлы (не папки), который оказываются в папке d:\ZAKAZ. То есть при появлении любого файла (не папки) в папке d:\ZAKAZ , этот файл удаляется
-------------
@ECHO OFF
del /Q "d:\zakaz\*.*
--------------

Отправлено: 16:15, 04-05-2018 | #3


Ветеран


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

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


Цитата Wrongbee:
На данный момент в планировщике работает батник, который удаляет все файлы (не папки), который оказываются в папке d:\ZAKAZ. То есть при появлении любого файла (не папки) в папке d:\ZAKAZ , этот файл удаляется »
Как именно он работает в Планировщике? Ибо в коде самого пакетного файла отсутствуют какие-либо средства для слежения за «появлением любого файла». И, как я понимаю, в Планировщике этого тоже нет. А что там есть, как именно организован запуск пакетного файла в задании?

Цитата Wrongbee:
Есть папка d:\ZAKAZ. На каждый новый заказ заводится папка с именем типа "25647_Заказчик". Хотелось бы оставлять все папки, имя которых начинается с пяти цифр (дальше неважно). »
Ясно.

Цитата Wrongbee:
И переносить все остальные папки в D:\Musor »
Зачем переносить? Почему не просто удалять? В принципе, можно и переносить, но зачем?

Отправлено: 16:39, 04-05-2018 | #4


Ветеран


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

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


Код: Выделить весь код
dir /ad /b | findstr /v /r "^[0-9][0-9][0-9][0-9][0-9]."
вернет имена директорий, которые не подходят под ваше правило. Их и удаляйте.

-------
консольный клиент telegram для Windows: www.elapser.info

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

Отправлено: 16:41, 04-05-2018 | #5


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


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

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


Спасибо!!! Начну пробовать

Ставил удалялку файлов давно, но cmdow @ /HID работала кривовато (помигивал экран при запущенном графическом софте), и именно в планировщик был поставлен скрипт, который и запускает батник 1.cmd абсолютно невидимо. Не самое изящное решение, наверно.
---------

Dim oShell

Set oShell = WScript.CreateObject ("WSCript.shell")

oShell.run "D:\Cron\1.cmd", 0

Set oShell = Nothing
--------------------

Отправлено: 16:50, 04-05-2018 | #6



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Удалить все папки и файлы кроме определенных 2 папок и 2 файлов komilfo Скриптовые языки администрирования Windows 2 18-01-2018 09:08
Любой язык - [решено] Перенести все файлы из каталогов/подкаталогов в субпапку, а пустые папки удалить Alexander_88 Скриптовые языки администрирования Windows 4 24-11-2015 20:07
CMD/BAT - Удалить из папки все файлы с расширением .txt, кроме одного kardinalmax Скриптовые языки администрирования Windows 13 22-10-2015 12:21
CMD/BAT - [решено] Как удалить все папки кроме папок с названием длиной в 14 символов? yaoleg2 Скриптовые языки администрирования Windows 9 26-03-2011 03:49
CMD/BAT - [решено] Удалить все файлы из папки кроме нужных Sirimika Скриптовые языки администрирования Windows 16 12-11-2010 10:33




 
Переход