Я сделал это с помощью быстрого скрипта Python:
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()
Извините за плохой сценарий, но использование довольно приятно, IMO.
Поместите его где-нибудь на вашем пути, добавьте .py к вашему PATHEXT и добавьте c:\aliases к своему PATH (или измените его, в зависимости от того, что подходит), затем используйте:
alias <command> <action>
для псевдонима (Да, нет =, хотя добавить туда .split не составит труда), и:
alias -p <command or part of>
Чтобы показать, что что-то есть.
Взломать, но тупо полезно. Есть эквивалентный сценарий unalias, но я уверен, что вы можете решить его.
редактировать: это, очевидно, требует Python, написанный на v26, но, вероятно, будет работать во всем, что в последнее время. Как и раньше, извините за качество :)
edit2: На самом деле, что-то вроде этого, но было бы лучше добавить в доски вещи. Вы также можете добавить команды запуска в cmd с ключом реестра автозапуска, чтобы это было намного чище.