我想扩展powershell,以便它支持更广泛的命令,包括支持运行与系统中的可执行文件名匹配的命令。我知道许多脚本编写人员实现了脚本,这些脚本将帮助从系统的路径或注册表运行应用程序。例如,这里有一个类似的想法:http://www.codeproject.com/Articles/224166/bash-like-prompt-in-PowerShell-and-app-run我要求更多。我想只键入程序的名称,它将调用该程序而无需额外输入(甚至不是额外脚本的别名)
粗略地说,我想添加支持,
所有运行命令。例如,
PS>记事本++
PS>铬
我知道'启动chrome'会工作。但并非所有应用程序都以这种方式工作。 例如,如果chrome是命令,我会添加一个' start'在它之前。如果该命令与其他可执行文件匹配。我会发送& " \路径\到\可执行"
此外,我想摆脱命令的开始。我还想添加以下功能,
2015年。命令提示和炮弹仍然如此愚蠢。因此,我将编写一个自定义shell。在重新发明轮子之前,我想确保使用powershell扩展命令已经无法做到这一点。
我需要访问发送到powershell执行的所有命令,并在powershell执行之前修改它们。
答案 0 :(得分:0)
关于您的第一个案例,启动某些可执行文件see my answer here about why this is happening and how you can deal with it。
就其他内容而言,我认为不可能添加自己的操作符,但您可以编写自己的函数。您还可以使用可在.Net中使用的任何类/类型/库,包括您自己编写的类。
您甚至可以在字符串中使用Add-Type
C#(或VB.net?)代码来添加功能。很可能有一种方法可以在某个现有的.Net库中执行您想要的操作,所以我会首先查找它们。
PowerShell是非常惊人和广泛的,因为它具有.Net背后的全部功能。
也许您可以展示一些[伪]代码示例,说明您希望提议的功能如何工作,然后我们可以发布一些解决方法。