Como Christian.K disse em seu comentário, o comando DOSKEY pode ser usado para definir macros, que são análogas aos aliases.
doskey macroName=macroDefinition
Parâmetros de macro são referenciados na definição via $
posições prefixadas: $1
a $9
e $*
para todos.
Consulte a documentação do doset technet ou digite doskey /?
ou help doskey
do linha de comando para mais informações.
Mas há sérias limitações com macros DOSKEY:
- As macros só funcionam na linha de comando interativa - elas não funcionam em um script em lotes.
- Eles não podem ser usados nos dois lados de um canal:
someMacro|findstr '^'
edir|someMacro
falham. - Eles não podem ser usados em comandos FOR / F:
for /f %A in ('someMacro') do ...
falha
As limitações são tão severas que eu raramente uso macros DOSKEY.
Obviamente, você pode criar scripts em lote em vez de macros e certificar-se de que os locais dos scripts estão em seu PATH. Mas você deve prefixar cada script com CALL se quiser usar o script em outro script.
Você pode criar "macros" de variáveis simples para comandos longos e mais usados, mas a sintaxe é um pouco difícil de digitar, já que você precisa expandir a "macro" quando quiser usá-la.
Definição:
set "cdMe=cd a_very_long_path"
Uso (da linha de comando ou script)
%cdMe%