Jak dodać tekst do pliku za pomocą PowerShell

Łatwo jest dodać tekst do pliku za pomocą Windows Powershell za pomocą cmdleta Add-Content, oto kilka przykładów:

  1. Utwórz przykładowy plik tekstowy używając notatnika. Ja swój utworzyłem w ten sposób:
    Obraz przedstawiający plik tekstowy, do którego zostanie dołączony tekst za pomocą cmdleta Powershell Add-Content
  2. Otwórz okno Powershell i wpisz:
    Add-Content C:\temp\test.txt "Test"

    Jeśli otworzysz plik tekstowy ponownie, zobaczysz, że tekst został dołączony na końcu istniejącej linii:
    Image showing how text file after text has been appended with Powershell Add-Content cmdlet

Powyższy przykład jest w porządku, ale jak widać dane nie zostały zapisane do nowej linii.

Przykładowy PowerShell do dołączania tekstu do pliku w nowej linii

Aby dołączyć treść do nowej linii należy użyć znaku escape, po którym następuje litera „n”:

Więc kontynuując powyższy przykład można by użyć:

Add-Content C:\temp\test.txt "`nThis is a new line"

I wtedy wynikowy plik tekstowy wyglądałby tak:

Wizerunek pliku tekstowego, do którego dane zostały dołączone w nowej linii za pomocą cmdleta Windows Powershell Add-Content

Dodawaj sformatowane dane za pomocą Powershell’a używając tabulatorów i nowych linii

Przykład ten tworzy plik sformatowany w tabulatory, dane wyjściowe wyglądają tak:

Image showing how to format a text document using tabs and newline with powershell Add-Content cmdlet

Powershell do stworzenia powyższego przykładu to:

Add-Content C:\temp\test.txt "`nItem`tQty`tValue`tTotal"Add-Content C:\temp\test.txt "`nPants`t4`t32.22`t128.88"Add-Content C:\temp\test.txt "`nSocks`t3`t5.07`t15.21"Add-Content C:\temp\test.txt "`nShoes`t12`t136.57`t1638.84"

Jak widać, tabulatory są dodawane za pomocą znaku specjalnego „`t”.

Dodawanie do pliku za pomocą przekierowania

Proces opisany powyżej wydaje się być „normalnym” sposobem na dołączenie do pliku w PowerShell. Ale jeśli pochodzisz z Uniksa lub Linuksa, to prawdopodobnie wyda ci się to ciężką pracą w porównaniu do użycia przekierowania komend, które również działa doskonale w PowerShellu. Na przykład:

"This is a test" >> Testfile.txt

Nie wiem dlaczego ta metoda nie jest używana częściej w PowerShell, ponieważ jest o wiele bardziej zwięzła niż „Add-Content”. Może to dlatego, że nie ma tego samego poziomu funkcjonalności, w większości przypadków jest w porządku.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *