Precisa de um comutador de Lote que irá lançar / matar aplicativos quando executado

2

Eu tenho uma grande alternância de lotes que mostra arquivos ocultos quando eles são executados e, em seguida, oculta os arquivos ocultos quando eles são executados novamente.

Eu estou querendo saber se eu posso criar um arquivo semelhante que vai matar uma série de aplicativos de trabalho (ex. serviços de nuvem, evernote, etc). quando executado inicialmente. Então, reinicie esses mesmos aplicativos quando terminar de jogar ou o que for que eu esteja fazendo que não precise de todos esses programas.

Seria super útil ter. Isso é possível fazer? Porque a maioria do que eu tenho visto tem os comandos launch / kill em morcegos separados e eu adoraria acionar a tecla.

    
por user208181 18.03.2013 / 06:04

2 respostas

1

Aqui está um arquivo em lote de uma linha que você pode usar:

tasklist /fi "ImageName eq notepad.exe" | find /i "notepad.exe" && taskkill /fi "ImageName eq notepad.exe" || start "" notepad.exe

Ele encerrará todas as instâncias em execução do Bloco de Notas e, se nenhuma existir, iniciará o Bloco de Notas. Modifique conforme necessário. (Por exemplo, se você quer fazer coisas mais complexas, use loops if-else , verifique errorlevel etc. Veja if /? para mais.)

    
por 18.03.2013 / 07:35
0

Você precisa de algo informando o arquivo .bat que ele executou antes. Você poderia adicionar uma chave de registro, uma variável de ambiente, um valor para um arquivo .txt ... o céu é o limite, você só precisa armazenar um valor em algo que não será perdido quando você fechar o .bat . A solução mais simples:

@echo off
if exist ran_once.txt (
start process1.exe
start "path/to/process2.exe"
...
del /q ran_once.txt
) else (
taskkill /f /im process1.exe
taskkill /f /im process2.exe
...
echo foo>ran_once.txt
)

Verifique se ran_once.txt está na mesma pasta que o .bat ou use full/path/to/ran_once.txt

Uma solução mais eloquente seria pause depois de matar todos os processos, abrir seu jogo ou qualquer outra coisa, e quando você retornar do jogo, pressione qualquer tecla no arquivo .bat para continuar rodando e iniciar todos os processos. novamente.

    
por 18.03.2013 / 07:28

Tags