PowerShell / PowerShell/vscode-powershell
`$PSScriptRoot` is not populated when running a code block (via F8)
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 1.9k
- Forks
- 548
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
System Details
- Operating system name and version: Windows 10
- VS Code version: 1.10.2
- PowerShell extension version:
- Output from
$PSVersionTable:
PS C:\Source\neo4j-quick-demo> $pseditor.EditorServicesVersion
Major Minor Build Revision
----- ----- ----- --------
0 11 0 0
PS C:\Source\neo4j-quick-demo>
PS C:\Source\neo4j-quick-demo> code --list-extensions --show-versions
PS C:\Source\neo4j-quick-demo>
PS C:\Source\neo4j-quick-demo> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.14393.953
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.14393.953
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
Issue Description
$PSScriptRoot is not populated when running a code block (via F8)
I am trying load DLLs that are in the same directory as the PowerShell script and use $PSScriptRoot to get the location for them.
When running the code in PowerShell it's fine, but using VSCode, when running the code snippet via F8, the variable is not populated.
Repro
- Open VSCode and create a PowerShell (.ps1) file
- Add the following command
Write-Host "$PSScriptRoot\abc" - Select the newly created line and Press F8 to execute the PowerShell in the integrated terminal
Expected result:
<full working path>\abc
e.g. If the script I was editing was in C:\Source I would expect the result to be C:\Source\abc
Actual result:
\abc
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduziere das Problem, indem du die PowerShell-Zeile auswählst und F8 drückst, um sie im integrierten Terminal auszuführen, und dabei das dokumentierte Windows- und VS Code-Setup verwendest. Verfolge den Ausführungspfad für Codeblöcke über F8 und überprüfe, dass $PSScriptRoot in das Skriptverzeichnis aufgelöst wird, anstatt nur \abc zu erzeugen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- powershell, typescript
- Bereich
- developer-experience, devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100