![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Проверить процесс, создать папку "AT-1" в папке "AT" и вместе с ее файлами и папками |
|
CMD/BAT - [решено] Проверить процесс, создать папку "AT-1" в папке "AT" и вместе с ее файлами и папками
|
Новый участник Сообщения: 27 |
Есть папка "AT" с постоянным именем, полный путь C:\AT
Есть папка "M" тоже с постоянным именем, полный путь C:\M В папке "M" есть еще папка с файлами и подпапками. Имя папки, которая лежит в папке "M" всегда разное и может принимать вид, например такой: "Блок © VF 办公室" Нужно чтобы при запуске BAT скрипта выполнялась проверка процесса "calc.exe" 1) Если процесс "calc.exe" есть, то Ожидать когда процесс "calc.exe" завершится, чтобы выполнить пункт (2) 2) Если процесса "calc.exe" нету, то создать папку "AT-1" в папке "AT" и всю папку "Блок © VF 办公室" вместе с ее файлами и подпапками переместить в созданную папку "AT-1", но только в том случае если в папке "AT" нету папки "AT-1", а если папка "AT-1" уже есть, то создать папку "AT-2" и переместить туда! затем закрыть BAT скрипт. P.S. В папке "M" файлы и подпапки могут быть с разными именами, расширениями, размерами и атрибутами (системные, скрытые, только для чтения) Это пример ДО выполнения скрипта: C:\AT\AT-1\Круг © VF 办公室\VF 办公室 © Круг\Круг.txt C:\M\Блок © VF 办公室\VF 办公室 © Блок\Блок.exe Это пример ПОСЛЕ выполнения скрипта: C:\AT\AT-1\Круг © VF 办公室\VF 办公室 © Круг\Круг.txt C:\AT\AT-2\Блок © VF 办公室\VF 办公室 © Блок\Блок.exe C:\M\ |
|
Отправлено: 14:22, 04-07-2020 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Foreigner,
Цитата KOD65001:
|
|
Отправлено: 06:10, 05-07-2020 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1759
|
Цитата Iska:
|
|
Отправлено: 07:37, 05-07-2020 | #12 |
Ветеран Сообщения: 1759
|
PS > calc PS > get-process calc get-process : Cannot find a process with the name "calc". Verify the process name and call the cmdlet again. At line:1 char:1 + get-process calc + ~~~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (calc:String) [Get-Process], ProcessCommandException + FullyQualifiedErrorId : NoProcessFoundForGivenName,Microsoft.PowerShell.Commands.GetProcessCommand PS > (Get-CimInstance win32_Process | ? { $_.Name -like 'calc*' }).CommandLine "C:\Program Files\WindowsApps\Microsoft.WindowsCalculator_10.2005.23.0_x64__8wekyb3d8bbwe\Calculator.exe" -ServerName:App.AppXsm3pg4n7er43kdh1qp4e79f1j7am68r8.mca PS > (get-process Calculator).kill() |
Отправлено: 08:36, 05-07-2020 | #13 |
Crazy Сообщения: 1235
|
Профиль | Отправить PM | Цитировать Цитата KOD65001:
![]() Цитата KOD65001:
Приведите описание реальной проблемы во всех подробностях... Например, непонятно: Сколько всего может быть каталогов "AT-No"? Сам сценарий запускаться будет вручную или по расписанию? В общем, подробности таки требуются... Цитата Busla:
Поэтому структура форума здесь не при чем. Да, в чем-то это удобно, иногда требуется разделение, но если таки требуется решение проблемы, то не имеет никакого смысла гонять пользователей по разделам форума и грозить им страшными карами, что не туда опубликовали свою проблему... гораздо проще предложить решение, а вот если оно уже не устраивает в части инструмента, тогда автор вопроса и должен сделать уточнение. Желательно, хоть и необязательно, с обоснованием, почему именно требуется конкретный инструмент ... и да, обоснование не может быть вида "потому, что хочу", ибо если хочешь, то и изучай, и пытайся решить самостоятельно... если не получается - опиши свое решение и задай вопрос о той части, где что-то не получается. Помогут обязательно. А вот когда описывается задача и только, то инструмент ... ну, вот никакого значения не имеет, имхо. Как-то так. |
|||
------- Отправлено: 09:14, 05-07-2020 | #14 |
Ветеран Сообщения: 2735
|
Профиль | Отправить PM | Цитировать CMD. Каталогов AT-X может быть много
@Echo Off Set "ImageName=calc.exe" Set /A TimeOut=5 Set "BoxATnew=C:\AT\AT-" Set "BoxM=C:\M" :Check cls TaskList /Fi "ImageName Eq %ImageName%" |Find /I "%ImageName%" &&( TimeOut /T %TimeOut% GoTo :Check ) Set /A N=0 :DirMD Set /A N+=1 If Exist "%BoxATnew%%N%" GoTo :DirMD Pushd "%BoxM%" xcopy /C /E /H /F "%BoxM%\*.*" "%BoxATnew%%N%\" &&2>nul Rd /S /Q "%BoxM%" Popd pause Exit /B Foreigner, Move со скрытой папкой не отработает. Не уверен, отработает ли с папкой по имени VF 办公室 © Круг YuS_2, Цитата YuS_2:
Busla, Цитата Busla:
ИМХО, оффтоп -это не предложенное решение иными средствами, а панегирики на тему, какой же аццтой этот CMD, VBS и т д. |
||
------- Последний раз редактировалось megaloman, 05-07-2020 в 13:12. Отправлено: 12:53, 05-07-2020 | #15 |
Ветеран Сообщения: 1759
|
Цитата megaloman:
У меня отработало. Но, у меня все, включая cmd.exe, в UTF-8 без бом. |
|
Отправлено: 13:11, 05-07-2020 | #16 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Foreigner:
![]() |
|
Отправлено: 13:31, 05-07-2020 | #17 |
Новый участник Сообщения: 27
|
Профиль | Отправить PM | Цитировать Цитата YuS_2:
Iska, Foreigner, "имя процесса" я в коде сразу исправил на свой. Процесс "calc.exe" - это просто для примера. Периодически на работе требуется менять процесс в зависимости от операций и поставленных задач начальством. Foreigner, megaloman, Да это именно то, что нужно! Только код от Foreigner что-то не перемещает папку которая находится в папке "М", пробовал разные варианты UTF с бом и без..а вот у megaloman почему то хорошо перемещает...я так понимаю что в методе лучше использовать copy вместо move |
|
Отправлено: 13:35, 05-07-2020 | #18 |
Ветеран Сообщения: 1759
|
Цитата Iska:
|
|
Отправлено: 13:41, 05-07-2020 | #19 |
Новый участник Сообщения: 27
|
Профиль | Отправить PM | Цитировать Спасибо ВСЕМ за помощь!
![]() |
Отправлено: 13:52, 05-07-2020 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Нужно создать "батник" - вырезать из "2.txt" первых n строк и вставить их в "1.txt" | temphard | Скриптовые языки администрирования Windows | 12 | 10-01-2014 18:36 | |
Интерфейс - [решено] пропала кнопка "Создать контакт" в папке "Контакты" | 75Roman | Microsoft Windows 7 | 5 | 26-04-2012 21:19 | |
Доступ - [решено] Надо расшарить папку "буфер" и в ней создать папку "личное" и закрыть к ней доступ | stv_J | Microsoft Windows 2000/XP | 20 | 20-11-2010 13:09 | |
Интерфейс - [решено] Как удалить папку "Моя музыка","Мои Картинки", "Мое видео"? | verdix | Microsoft Windows 2000/XP | 3 | 03-10-2009 23:46 | |
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") | submaster | Microsoft Windows NT/2000/2003 | 5 | 13-09-2006 12:29 |
|