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

Показать сообщение отдельно

Пользователь


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

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


alpap, спасибо за ответ.
Цитата alpap:
если выделенное отдать сразу параметром для bat (прописать в конт. меню), то будет запускаться столько окон bat, сколько путей было выделено »
Я понимаю, это вполне меня устроит. Имею в контекстном меню несколько батников для переименований и другого.
По текущей задаче, при 10-15 наименований под удаление в день, которые редко удаляются сразу все, а обычно за 2-3 раза в течение дня - это нормально. Даже если бы пришлось по одному названию удалять, а не скакать между окнами с поиском - уже было бы легче. Но целесообразно сразу сделать удаление пакетами (несколькими bat-окнами) - машину это не напряжет.
Цитата alpap:
можно выделенное передать в файл-список и потом придется еще запускать bat где будет сравнение содержимого заданных путей с этим списком »
Я предполагал, что можно обойтись без сравнения путей, а только извлекать имена выделенных папок и добавлять их к путям заданных родительских папок. И в таком виде отправлять на удаление без сравнения. Не важно есть ли такая папка. Если есть - она будет удалена. Если нет - команда все равно пройдет к следующей.

Как примерно представлял себе конструкцию батника:

1 - задать через set пути к родительским папкам, где нужны удаления. Согласно примеру:
Set "FolderA=C:\Folder2"
Set "FolderB=C:\Folder3\Subfolder"
2 - для выделенных папок (for) прописать через do set замену путей каждой папки на путь вида "FolderA\папка", и через call отправить на удаление этого пути.
3 - аналогично, для выделенных папок прописать замену пути каждой папки на путь вида "FolderB\папка", и отправить на удаление.
4 - удаление выделить с помощью метки.

alpap, однако, если я ошибаюсь, и такая конструкция неработоспособна, то можно было бы основным батником не просто генерировать пути для списка удаления, а формировать строки нового временного батника, состоящие из команды удаления и сгенерированных путей, и выводить в новый батник >> temp.bat
По примеру такого вида:
call del "C:\Folder2\Март"
call del "C:\Folder2\Октябрь"
call del "C:\Folder2\Декабрь"
call del "C:\Folder3\Subfolder\Март"
call del "C:\Folder3\Subfolder\Август"
call del "C:\Folder3\Subfolder\Сентябрь"
call del "C:\Folder3\Subfolder\Октябрь"
Это решит проблему нагрузки и количества окон bat, и сюда же можно дописать удаление этого временного батника:
call del "temp.bat"

Хотелось бы обойтись одним постояным bat-файлом. Однако, навыков все равно не хватает ни для первого, ни для второго варианта.



Последний раз редактировалось NuclearBox, 17-05-2019 в 12:12.


Отправлено: 11:51, 17-05-2019 | #5