Jeśli jesteś na rynku cmdleta PowerShell, który może przechowywać wyjście w pliku tekstowym, masz szczęście. Wkrótce dowiesz się, jak korzystać z modułu PowerShell Out-File
cmdlet wraz z popularnym parametrem Out-File -Append
!
spis treści
jak działa Out-File?
cmdlet PowerShell Out-File ma prostą naturę; jego jedynym celem jest przechowywanie otrzymanych wyników i przechowywanie ich w pliku tekstowym.,
Out-File został zaprojektowany w celu zastąpienia standardowego operatora przekierowania wyjścia (>
). Nawet z dni DOS, możemy przekierować wyjście do pliku. Ten cmdlet jest PowerShell sposób, aby to zrobić.
Out-File
cmdlet jest zwykle używany na końcu potoku PowerShell. Jego jedynym celem jest wysłanie nieprzetworzonego wyjścia bezpośrednio do pliku tekstowego bez względu na to. Istnieją minimalne sposoby na dostosowanie sposobu zapisu danych wyjściowych.,
wysyłanie danych wyjściowych do pliku
Załóżmy, że masz skrypt, który zwraca listę wszystkich usług systemu Windows na twoim komputerze. Po uruchomieniuGet-Service
otrzymasz wszystkie obiekty, których możesz oczekiwać na konsoli.
ale może chciałbyś zapisać to wyjście do pliku tekstowego. Out-File
cmdlet to świetny sposób, aby to zrobić. Możesz użyć Out-File
poprzez Orurowanie prawie wszystkiego do niego za pośrednictwem rurociągu.,
możesz zobaczyć poniżej, wyjście Get-Service
zostało wysłane do cmdleta, który utworzył plik tekstowy o nazwie Services.tekst zawierający dokładny wyświetlacz wyświetlany na konsoli.
PS> Get-Service | Out-File -FilePath C:\Services.txtPS> Get-Content C:\Services.txtStatus Name DisplayNameStopped AJRouter AllJoyn Router ServiceStopped ALG Application Layer Gateway ServiceStopped AppIDSvc Application IdentityStopped Appinfo Application InformationStopped AppMgmt Application Management<SNIP>
dołączanie do pliku
domyślnieOut-File
nadpisuje cokolwiek w pliku tekstowym dostarczonym za pomocą parametruFilePath
. Można jednak nadpisać to zachowanie, używając parametru Append
.,
być może gromadzisz dane wyjściowe konsoli w pliku i chciałbyś dodać tekst do pliku zamiast nadpisywać. Parametr Append
jest twoim najlepszym przyjacielem.
używając parametru Out-File -Append
możesz zobaczyć poniżej, zauważ, że jeśli go nie używasz C:\File.txt jest nadpisany. Ale gdy tylko zaznaczysz parametr Append
, dopisze on wyjście do końca.
Zmiana wyjścia
domyślnie ten cmdlet będzie próbował replikować to, co jest pokazane na konsoli, ale istnieje kilka sposobów na manipulowanie tym., Na przykład, cmdlet ma parametr NoNewLine
, który usuwa tylko wszystkie znaki nowej linii.
lub możesz odciąć tekst w każdym wierszu o określonej liczbie znaków, a także za pomocą parametru Width
.
podsumowanie
w realnym scenariuszuOut-File
cmdlet działa, ale są lepsze sposoby przechowywania danych wyjściowych do pliku.
Out-File
cmdlet nie zawiera rzeczywistych opcji manipulowania wyjściem. Po prostu zapisuje wyjście dokładnie tak, jak pokazano w konsoli., Ten cmdlet jest podobny do transkrypcji PowerShell, który po prostu zapisuje wszystko bezpośrednio do pliku tekstowego.
Add-Content
lubSet-Content
cmdlety zawsze będą miały większą elastyczność, ale jeśli potrzebujesz szybkiego sposobu na uzyskanie wyjścia PowerShell do pliku,Out-File
jest dobrym rozwiązaniem.
Related: Set-Content: the PowerShell Way to Write to a File