【发布时间】:2017-01-19 03:26:30
【问题描述】:
这可能吗?我试过this blog,但它不起作用。
我有一个包含大约 50 个左右 doskey 宏的宏文件,用于 cmd.exe。
我运行类似:
doskey /exename=powershell.exe /macrofile=C:\macrofile.txt
或
doskey /exename=powershell.exe blah=echo blah
但是尝试命令blah 会报错:
blah :术语“blah”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。
如果我用doskey /macros:powershell.exe 列出它们,它们都在那里。
有没有办法可以在 PowerShell 中创建 50 个别名来映射到这些宏? Set-Alias cmdlet 没有多大帮助,因为这些命令比调用简单的 PowerShell cmdlet 更复杂。有些帖子建议在 .ps1 脚本中创建函数,但是,只有当我为文件中的 50 个宏中的每一个手动编写 50 个不同的函数时,这才有效。此外,这将涉及维护两个文件 - 用于 cmd 的宏文件和将这些文件转换为函数的 PowerShell 脚本。
【问题讨论】:
-
“但它不起作用” - 你能说得更具体点吗?
-
谢谢,已编辑问题以包含详细信息。
-
我相信如果您不使用
PSReadLine模块,这将有效。
标签: powershell alias doskey