Powershell 是否可以在用户cd上运行脚本并将其复制到目录

Powershell 是否可以在用户cd上运行脚本并将其复制到目录,powershell,Powershell,是否可以在PowerShell中设置脚本,以便在某人cd-ing进入目录时自动运行 我理解这是一个糟糕、糟糕、不好的主意的所有原因,但有没有一种机制可以支持它,而不涉及一些深层次的文件系统黑客攻击?cd只是设置位置的别名。您可以删除cd别名(需要使用-Force IIRC),然后创建一个cd函数。这就是我们要做的。但是,如果要处理直接使用Set Location的情况,则需要创建一个for Set Location,以便插入自定义代码。我想我在bash中看到了使用rvm时的类似情况,但我不确定。

是否可以在PowerShell中设置脚本,以便在某人
cd
-ing进入目录时自动运行


我理解这是一个糟糕、糟糕、不好的主意的所有原因,但有没有一种机制可以支持它,而不涉及一些深层次的文件系统黑客攻击?

cd
只是设置位置的别名。您可以删除
cd
别名(需要使用-Force IIRC),然后创建一个cd函数。这就是我们要做的。但是,如果要处理直接使用Set Location的情况,则需要创建一个for Set Location,以便插入自定义代码。

我想我在bash中看到了使用rvm时的类似情况,但我不确定。我想不出任何不涉及替换/覆盖
设置位置的东西,所有这些都很容易被忽略。下一个想法是一个
FileSystemWatcher
,但它只会获取对文件系统的更改。为cmd.exe(32位和64位)编写一个系统级钩子,并侦听
按键。类似于
while(!Console.KeyAvailable){…//执行类似于键入cd命令时运行Powershell脚本的操作}
可以在C#中完成。向系统管理员好友询问bash时,他建议rvm实际上过度写入
cd
命令。所以,如果bash中没有类似的函数,那么如果PSSo中没有类似的函数,我也不会感到惊讶,不是吗?代理函数的伟大链接btwYeah,您将不得不删除内置的cd“alias”,但您将创建一个新的cd函数。