PowerShell:
Pisanie pliku tekstowego

Jak:

PowerShell zapewnia proste polecenia cmdlet do obsługi plików. Głównie używa się cmdletu Out-File oraz operatorów przekierowania do tego celu. Oto przykłady ilustrujące jak zapisać tekst do plików w różnych scenariuszach:

Podstawowe tworzenie pliku tekstowego:

Aby stworzyć plik tekstowy i zapisać do niego prosty ciąg tekstowy, możesz użyć:

"Hello, World!" | Out-File -FilePath .\example.txt

Lub równoważnie z operatorem przekierowania:

"Hello, World!" > .\example.txt

Dopisywanie tekstu do istniejącego pliku:

Jeśli chcesz dodać tekst na końcu istniejącego pliku bez nadpisywania go:

"Another line." | Out-File -FilePath .\example.txt -Append

Lub używając operatora przekierowania do dopisywania:

"Another line." >> .\example.txt

Zapisywanie wielu linii:

Do zapisywania wielu linii możesz użyć tablicy ciągów tekstowych:

$lines = "Line 1", "Line 2", "Line 3"
$lines | Out-File -FilePath .\multilines.txt

Określanie kodowania:

Aby określić konkretne kodowanie tekstu, użyj parametru -Encoding:

"Text with UTF8 Encoding" | Out-File -FilePath .\utfexample.txt -Encoding UTF8

Użycie bibliotek firm trzecich:

Chociaż wbudowane polecenia cmdlet w PowerShell wystarczają do podstawowych operacji na plikach, bardziej skomplikowane zadania mogą korzystać z modułów firm trzecich, takich jak PowershellGet, czy narzędzi jak SED i AWK przeniesionych dla systemu Windows. Jednak do czystego zapisywania pliku tekstowego mogą one być niepotrzebne i ogólnie rzecz biorąc, nie są wymagane:

# Zakładając bardziej skomplikowany scenariusz uzasadniający użycie zewnętrznej biblioteki
# Install-Module -Name SomeComplexLibrary
# Import-Module -Name SomeComplexLibrary
# Tutaj bardziej skomplikowane operacje

Uwaga: Zawsze zastanów się, czy złożoność dodania zależności od strony trzeciej jest uzasadniona dla Twoich potrzeb.

Przykładowe Wyjście:

Po wykonaniu podstawowej komendy tworzenia pliku, sprawdzając zawartość example.txt, pokazuje:

Hello, World!

Po dopisaniu tekstu i ponownym sprawdzeniu example.txt:

Hello, World!
Another line.