非常简单的PowerShell脚本由于未知原因而无法正常工作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了非常简单的PowerShell脚本由于未知原因而无法正常工作相关的知识,希望对你有一定的参考价值。

我正在尝试将当前脚本设置为执行路径。我正在阅读可用的JSON文件。我的app.exe列出了所有可用的JSON文件。当我从C:myproj启动此脚本时。它显示了我的家乡路径C:UsersEIM。以下脚本有什么问题?即使我调试它,我可以看到$cureentDir值是C:myproj。我正在使用Windows 10和PowerShell版本5。

$scriptpath = $MyInvocation.MyCommand.Path;
$cureentDir = Split-Path $scriptpath;
Set-Location -Path $cureentDir;
$exe = "C:projapp.exe"
$arguments = '- silent'
Push-Location (Split-Path -Path $MyInvocation.MyCommand.Definition -Parent)
$proc = [Diagnostics.Process]::Start($exe, $arguments)
$proc.WaitForExit();

更新

它现在正在运作。但是有一个新问题。我的应用和脚本都在C: proj location。我的控制台应用程序列出了所有可用的JSON文件,供用户从当前位置进行选择。但现在该应用程序列出了C: WINDOWS system32中的文件。为什么它不从C: proj列出。如果我通过双击启动它,它会显示当前位置的文件。如何解决这个问题

Available bootstrap files:
0. C:WINDOWSsystem32DefaultQuestions.json
1. C:WINDOWSsystem32
v-vk64.json
Select:    
答案

对于更新的问题,将我的执行目录设置在当前目录中以下工作完美。现在我的控制台应用程序查看当前的工作目录。

[Environment]::CurrentDirectory = $PWD 

以上是关于非常简单的PowerShell脚本由于未知原因而无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

带有 Visual Studio 2013 的 github - 由于未提交的更改而无法拉取

Powershell编码原因导致部分代码不执行

Powershell编码原因导致部分代码不执行

Powershell编码原因导致部分代码不执行

Powershell编码原因导致部分代码不执行

Powershell脚本安排每日任务错误