這個問題在這里已經有了答案: 如何在雙引號字串中使用物件的屬性? (5 個回答) 2 小時前關閉。
此帖已于2 小時前編輯并提交審核。
我需要您幫助確定為什么我無法輸出 PowerShell 腳本行程 ExitCode 以及如何解決此問題。我認為這與 Start-Process 命令結果的資料型別和其中的 ExitCode 屬性有關(根據此處底部的錯誤訊息,它似乎是“AnyType”)。
我有一個名為 out.bat 的簡單 CMD 批處理檔案,如下所示:
@echo off
echo Hello World, it's %1!
然后我有一個名為 out.ps1 的七行 PowerShell 腳本,如下所示:
1. $a = "C:\Temp\"
2. $b = "out.txt"
3. $c = "out.bat"
4. $process = Start-Process -FilePath "${a}${c}" -ArgumentList "123" -RedirectStandardOutput ${a}${b} -Wait -PassThru
5. Get-Content ${a}${b}
6. Write-Output $process.ExitCode
7. Write-Output "Error: $process.ExitCode"
我的 PowerShell 腳本確實成功輸出了我的 CMD 批處理腳本檔案發回的錯誤代碼,并按照上面的第六行輸出。
Hello World, it's 123!
0
但是,最后一行失敗了,
Cannot convert value to type System.String.
At line:7 char:1
Write-Output "Error: $process.ExitCode"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CategoryInfo : InvalidArgument: (:) [], RuntimeException
FullyQualifiedErrorId : InvalidCastFromAnyTypeToString
如何讓第 7 行簡單地輸出以下內容?
Error: 0
uj5u.com熱心網友回復:
您必須使用子運算式$(..)運算子來評估該屬性的參考:
Write-Output "Error: $($process.ExitCode)"
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/521944.html
標籤:电源外壳铸件
上一篇:uniapp熱更新和整包更新思路
