Abrir um prompt de cmd e emitir manualmente meus comandos personalizados de macro doskey funciona bem, mas imaginei que poderia economizar tempo criando atalhos de cmd que invocam esses comandos automaticamente.
Então, criei 2 atalhos cmd que executam automaticamente essas macros doskey nos campos de destino:
%windir%\system32\cmd.exe /k m7
e
%windir%\system32\cmd.exe /k m50
A execução dos atalhos mostra estas mensagens de erro:
'm5' is not recognized as an internal or external command
e
'm50' is not recognized as an internal or external command
Imagem mostrando a mensagem de erro na parte superior do prompt de comando
Comandos cmd regulares, no entanto, funcionam quando especificados no campo Target:
%windir%\system32\cmd.exe /k dir
O que devo fazer para que funcione com um comando doskey alias? A propósito, certifiquei-me de que cada atalho seja executado como administrador. E todas as minhas macros doskey foram carregadas no registro para persistência de memória entre as sessões do cmd. Obrigado.
Os arquivos cmd doskey:
alsias.cmd:
@echo off
doskey m7=C:\Bin\m7connect.cmd
doskey m50=C:\Bin\m50connect.cmd
m7connect.cmd:
@echo off
adb disconnect
adb connect 192.168.1.7
timeout /t 1 /nobreak
scrcpy
m50connect.cmd:
@echo off
adb disconnect
adb connect 192.168.1.8
timeout /t 1 /nobreak
scrcpy
Você não pode chamar uma macro DOSKEY dessa maneira.
Como prova, altere o destino do atalho para, por exemplo,
Eu acho que todas as macros estão listadas e o
'm50' is not recognized …
erro ocorre. No entanto, você pode invocar com êxito uma macro manualmente nacmd
janela de prompt aberta (m50
Enter)?Leia
CMD.EXE
também (sem opção de uma macro DOSKEY comoCommand
):Solução : use os
cmd
s operacionais em vez de seus nomes de macro DOSKEY em seu destino de atalho:e
em vez de
%windir%\system32\cmd.exe /k m7
e%windir%\system32\cmd.exe /k m50
respectivamente.