这个是可能的吗?我试过这个博客,但它不起作用。我有一个包含大约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脚本。
发布于 2017-01-20 01:08:11
PSReadLine模块(附带PowerShell 5.0或更高版本)与依赖本机控制台输入函数的doskey不兼容。我在Windows 10/PowerShell 5上进行了测试:
PS C:\> Remove-Module PSReadLine
PS C:\> doskey /exename=powershell.exe g=Get-Location
PS C:\> g
Path
----
C:\https://stackoverflow.com/questions/41733192
复制相似问题