Показать полную графическую версию : Убить процесс, только если он запущен
После выключения браузера выполняется команда:
/C taskkill /f /t /im USDownloader.exe
Но если USDownloader.exe не запущен, то появляется сообщение. Как сделать, чтобы команда выполнялась, только если USDownloader.exe запущен?
Команда нужна именно для консоли, а не в виде bat или cmd.
tasklist | find /i "USDownloader.exe" && taskkill /f /im "USDownloader.exe"
Чего-то не работает. Запускаю, но ничего не происходит.
Sisin, тогда рассказывайте, что Вы понимаете под «консолью», и как именно Вы запускаете.
Доперло.
/C tasklist | find /i "USDownloader.exe" && taskkill /f /t /im USDownloader.exe
/C 2>&1 >nul taskkill /f /t /im USDownloader.exe
/C 2>&1 >nul taskkill /f /t /im USDownloader.exe »
Красиво!!! :clapping:
PS: Iska, не окажете еще любезность, как очистить папку от всего содержания (в папке есть и файлы, и другие папки), оставив саму папку, командой в одну строку?
как очистить папку от всего содержания (в папке есть и файлы, и другие папки), оставив саму папку, командой в одну строку? »
Никак. Но можно вызвать такой пакетный файл (http://forum.oszone.net/post-1080597.html#post1080597).
Никак. Но можно вызвать такой пакетный файл. »
А нельзя как-нибудь пакетный файл выровнить в одну строку и запустить через командную строку?
Может можно сделать так, чтобы через командную строку создавался bat файл с нужным содержанием, запускался, выполнялся, а потом удалялся???
Ну. попробуйте как-нибудь так (не проверялось):
/e:on /v:on /c 2>nul pushd "Путь к папке" && 2>nul (rmdir /s /q "Путь к папке" & popd)
Опробуете — отпишитесь.
Опробуете — отпишитесь. »
Шикарно!!! А как прописать несколько папок, чтобы не дублировать команду. Пути относительные, без кавычек.
Боюсь, что никак. Токмо дублировать:
/e:on /v:on /c 2>nul pushd "Путь к папке" && 2>nul (rmdir /s /q "Путь к папке" & popd) & 2>nul pushd "Путь к папке2" && 2>nul (rmdir /s /q "Путь к папке2" & popd)
Почему-то по отдельности все работает, а связка не работает. Удаляется только первая папка из связки.
Не проверялось. Попробую посмотреть на досуге.
Пальцем в небо... Вроде работает...
/e:on /v:on /c 2>nul pushd %1 && 2>nul (rmdir /s /q 34 & popd) & (rmdir /s /q 12 & popd)
Sisin, будет удалено не содержимое папок 34 и 12, а они сами. И что у Вас означает %1 в данном контексте?
Sisin, будет удалено не содержимое папок 34 и 12, а они сами. »
Но/e:on /v:on /c 2>nul pushd "Путь к папке" && 2>nul (rmdir /s /q "Путь к папке" & popd)
также удаляет папку...
И что у Вас означает %1 в данном контексте? »
Наверное, все папки в папке...
Не проверялось. Попробую посмотреть на досуге. »
Проверил. Удаляется первая папка. Связано с хитрой логикой работы командного процессора с кавычками в командной строке. Попробуйте так (пути, естественно, будут Вашими):
/e:on /v:on /c "2>nul pushd "R:\00 01" && 2>nul (rmdir /s /q "R:\00 01" & popd) & 2>nul pushd "R:\00 02" && 2>nul (rmdir /s /q "R:\00 02" & popd) & 2>nul pushd "R:\00 03" && 2>nul (rmdir /s /q "R:\00 03" & popd)"
Попробуйте так »
Не работает.
http://savepic.ru/11449960.png
Sisin, дабы работало непосредственно в командной строке — ручками добавляйте вызов командного процессора "%comspec%" в начале указанного кода (что, надо полагать, самостоятельно делает некое не указанное приложение в:
После выключения браузера выполняется команда:
/C taskkill /f /t /im USDownloader.exe »
).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.