Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过脚本更改PowerShell cmd的目录_Powershell_Powershell 2.0 - Fatal编程技术网

如何通过脚本更改PowerShell cmd的目录

如何通过脚本更改PowerShell cmd的目录,powershell,powershell-2.0,Powershell,Powershell 2.0,我将如何着手做我在主题行中提到的事情。以下是我的意思的截图: 在运行“Test.ps1”脚本后,我希望下面的目录已更改为“C:\Program Files” 添加写入主机$pwd后更新的脚本 只要您有权导航到提供的位置,上述操作就会将目录更改为给定位置 只要您有权导航到提供的位置,上述操作就会将目录更改为给定位置。没有全局“当前”目录,它是您正在处理的特定进程的属性。winword.exe的“当前”目录可能与powershell.exe的“当前”目录非常不同。事实上,两个不同的power

我将如何着手做我在主题行中提到的事情。以下是我的意思的截图:

在运行“Test.ps1”脚本后,我希望下面的目录已更改为“C:\Program Files”

添加写入主机$pwd后更新的脚本

只要您有权导航到提供的位置,上述操作就会将目录更改为给定位置


只要您有权导航到提供的位置,上述操作就会将目录更改为给定位置。

没有全局“当前”目录,它是您正在处理的特定进程的属性。
winword.exe的“当前”目录可能与
powershell.exe的“当前”目录非常不同。事实上,两个不同的powershell进程可能对“当前”目录有不同的想法


因此,期望更改一个powershell进程中的“当前”目录会影响任何其他进程是愚蠢的。

没有全局“当前”目录,它是您正在使用的特定进程的属性。
winword.exe的“当前”目录可能与
powershell.exe的“当前”目录非常不同。事实上,两个不同的powershell进程可能对“当前”目录有不同的想法



因此,期望更改一个powershell进程中的“当前”目录会影响任何其他进程是愚蠢的。

如果要更改当前powershell实例的当前位置,则不应启动新的powershell实例:
\Test.ps1
@PetSerAI您能澄清一下您的意思吗,因为我不太明白你到底在告诉我什么?@TimothyKruger脚本的工作目录将更改为输入的路径。如果在更改目录命令后显示$pwd(打印工作目录),您会看到它将显示该路径。@TimothyKruger,那么这意味着更改后执行的任何命令都将在该目录中运行,就像在session@Nkosi好的,非常感谢您的回复,明天我在办公室的时候会做更多的测试,因为这只是一个简单的PowerShell脚本,我正在忙着创建的脚本已经变成了一个怪物,因为我很确定$pwd已经根据您的答案正确更改了,但是我的脚本必须运行其他脚本,这就是它实际出错的地方。但是$pwd会非常方便。如果您想更改当前PowerShell实例的当前位置,您不应该启动新实例:
\Test.ps1
@PetSerAI您能澄清一下您的意思吗,因为我不太明白你到底在告诉我什么?@TimothyKruger脚本的工作目录将更改为输入的路径。如果在更改目录命令后显示$pwd(打印工作目录),您会看到它将显示该路径。@TimothyKruger,那么这意味着更改后执行的任何命令都将在该目录中运行,就像在session@Nkosi好的,非常感谢您的回复,明天我在办公室的时候会做更多的测试,因为这只是一个简单的PowerShell脚本,我正在忙着创建的脚本已经变成了一个怪物,因为我很确定$pwd已经根据您的答案正确更改了,但是我的脚本必须运行其他脚本,这就是它实际出错的地方。但是$pwd将非常方便。如果我从*.ps1脚本运行它,它似乎不起作用,但是如果我直接从PowerShell cmd运行它,它就起作用了?到目前为止,我所研究的一切都表明cd是正确的。你有什么错误吗?您显示的图像看起来好像没有运行过。如果我没有弄错的话,我认为
设置位置-路径“C:\Folder\SubFolder”
cd“C:\Folder\SubFolder”
做的事情差不多?因此,是的,错误是在使用这些cmds时,它不会更改PowerShell脚本的目录,因为我已经尝试了这两种方法。。。你有电子邮件吗?阿迪,你可以私下和我分享,然后我可以给你发电子邮件,告诉你脚本和错误:D.Tim,从我在截图中看到的,你打开PowerShell,然后显示脚本主体的另一个截图,然后你的第三个屏幕显示你启动脚本的控制台,但什么也没有发生。请将以下内容添加到不带括号的脚本(Write Host$pwd)中,并告诉我显示了什么。请在添加Write Host$pwd后查看我的更新脚本。我看到$pwd的目录显示“C:\Program Files”,但为什么实际的PS目录没有更改为“C:\Program Files”?如果我从*.ps1脚本运行它,这似乎不起作用,但是如果我直接从PowerShell cmd运行它,它就起作用了?到目前为止,我研究的所有内容都表明cd是正确的。你有什么错误吗?您显示的图像看起来好像没有运行过。如果我没有弄错的话,我认为
设置位置-路径“C:\Folder\SubFolder”
cd“C:\Folder\SubFolder”
做的事情差不多?因此,是的,错误是在使用这些cmds时,它不会更改PowerShell脚本的目录,因为我已经尝试了这两种方法。。。你有电子邮件吗?阿迪,你可以私下和我分享,然后我可以给你发电子邮件,告诉你脚本和错误:D.Tim,从我在截图中看到的,你打开PowerShell,然后显示脚本主体的另一个截图,然后你的第三个屏幕显示你启动脚本的控制台,但什么也没有发生。请将以下内容添加到不带括号的脚本(Write Host$pwd)中,并告诉我显示了什么。请在添加Write Host$pwd后查看我的更新脚本。我看到$pwd的目录显示“C:\Program Files”,但为什么不显示
Set-Location -Path "C:\Folder\SubFolder"