Como usar / k para impedir que um atalho de prompt de comando seja fechado?

2

Estou tentando fazer um atalho que executará o seguinte comando com as seguintes opções. A janela se fecha antes que o comando possa ser executado por tempo suficiente. Eu quero saber onde colocar o / k na caixa de destino do atalho para manter as janelas de fechamento. (Eu acho que é / k, mas talvez seja outra coisa).

ping XXX.XXX.XXX.XXX -t -l 25565

Meu campo de destino é assim:

"C:\Windows\System32\PING.EXE" /k 10.98.56.1 -t -I 25565

Mas eu não sei onde o / k deve ir (se for / k). alguém pode reescrever isso com a sintaxe correta para mim?

    
por HornyPlatypus 27.01.2016 / 16:46

2 respostas

2

O parâmetro /k precisa ser passado para o processo do terminal ( cmd.exe ). Então, o seu atalho deve ficar assim:

%COMSPEC% /k C:\Windows\System32\PING.EXE XXX.XXX.XXX.XXX -t -I 25565

Nota: %COMSPEC% será resolvido para cmd.exe

    
por 27.01.2016 / 16:57
1

O argumento /k que você mencionou é para cmd.exe , não ping . Então você tem que ligar:

C:\Windows\System32\cmd.exe /k "c:\windows\system32\ping.exe" -t -I 255 192.168.1.1

O argumento -t especifica que você fará o ping até ser cancelado e o parâmetro -I especificará um TTL (Time-To-Live). O valor máximo deste campo é de 255 por especificação TCP.

Antes de perceber que o argumento /k era para cmd.exe , escrevi essa resposta usando arquivos em lote. Pode ser informativo e é apenas mais uma maneira de fazer o trabalho, então deixarei isso no caso de valer a pena.

Exemplo de arquivo em lote 1:

@ECHO OFF
ping -t -I 255 %1
pause
exit

Você pode chamar esse arquivo em lote com o atalho:

"c:\folder\batchfile.bat" 192.168.1.1

É claro que você substituiria a unidade, a pasta, o nome do arquivo em lotes e o endereço IP.

Você também pode agrupar uma série de pings usando uma estrutura como esta:

@echo off
:loop
cls
ping -n 10 -I 255 %1
timeout 5
goto :loop

O qual usa o argumento -n para fazer ping 10 vezes e, em seguida, faz um tempo limite de 5 segundos antes de recomeçar com outro lote de 10.

    
por 27.01.2016 / 17:19