O jeito que eu fiz foi com um script python rápido:
import sys
import string
import os
import glob
def listAll():
for infile in glob.glob("c:\\aliases\\*.bat"):
fileName = infile
fileName = fileName[len("c:\\aliases\\"):len(fileName)-4]
fileContents = open("c:\\aliases\\" + fileName + ".bat", "r")
fileContents.readline()
fileContentString=fileContents.readline()
fileName += " is aliased to "
fileName += fileContentString[0:len(fileContentString)-3]
print fileName
def listSome(which):
for infile in glob.glob("c:\\aliases\\*.bat"):
fileName = infile
fileName = fileName[len("c:\\aliases\\"):len(fileName)-4]
fileContents = open("c:\\aliases\\" + fileName + ".bat", "r")
fileContents.readline()
fileContentString=fileContents.readline()
if fileName.find(which)==0:
fileName += " is aliased to "
fileName += fileContentString[0:len(fileContentString)-3]
print fileName
if len(sys.argv)>1:
if sys.argv[1]!="-p":
file = open("c:\\aliases\\"+sys.argv[1]+".bat", "w")
file.write("@ECHO OFF\n")
counter=0
totalInput=""
counter=0
for arg in sys.argv:
if counter > 1:
totalInput+= arg + " "
counter+=1
if totalInput.find(".exe")!=-1:
file.write("\"")
counter=0
for arg in sys.argv:
if counter > 1:
file.write(arg)
if sys.argv[1]==sys.argv[2]:
if counter==2:
file.write(".exe")
temparg=str(arg)
if temparg.find(".exe")!=-1:
file.write("\"")
file.write(" ")
counter+=1
file.write("%*")
print "Aliased " + sys.argv[1] + " to " + totalInput
else:
if len(sys.argv)>2:
listSome(sys.argv[2])
else:
listAll()
else:
listAll()
Desculpas pelos scripts pobres, mas o uso é bastante bom, imo. Coloque-o em algum lugar do seu caminho, adicione .py ao seu PATHEXT e adicione c: \ aliases ao seu PATH também (ou altere-o, o que for adequado) e use:
alias <command> <action>
ao alias (Sim, não =, embora não seja difícil adicionar um .split nele) e:
alias -p <command or part of>
Para exibir o que é algo.
Hackish, mas estupidamente útil. Há um script de unalias equivalente, mas tenho certeza que você pode resolver isso.
edit: Isso obviamente requer python, escrito na v26, mas provavelmente funcionará em algo recente. Como antes, desculpe pela qualidade :)
edit2: Na verdade, algo parecido com isto, mas adicionar ao material doskey seria melhor. Você também pode adicionar comandos de inicialização ao cmd com a chave de registro de execução automática, para que seja muito mais limpo.
PATH
variável. Clique com o botão direito do mouse em Meu computador , escolha Propriedades , vá para Avançado e , em seguida, Variáveis de ambiente . Mais informações: stackoverflow.com/a/20773224/722036