Podczas korzystania z obiektu .NET z PowerShell i pobiera nazwę pliku, zawsze wydaje się być w stosunku do C:\Windows\System32
.Dlaczego obiekty .NET w PowerShell nie używają bieżącego katalogu?
Na przykład:
[IO.File]::WriteAllText('hello.txt', 'Hello World')
... napisze C:\Windows\System32\hello.txt
, zamiast C:\Current\Directory\hello.txt
Dlaczego PowerShell to zrobić? Czy to zachowanie można zmienić? Jeśli nie można go zmienić, jak to obejść?
Próbowałem już , ale to działa tylko z plikami, które już istnieją, i jest zbyt gadatliwe, aby robić to cały czas.
możliwe duplikat [Dlaczego PowerShell rozdzielających ścieżek z $ home zamiast aktualnego katalogu?] (http://stackoverflow.com/questions/4071775/why-is-powershell-resolving-paths-from-home-instead-of-the-current-directory) –