2013-02-26 8 views
6

nie widzę różnicy międzyPlik wyjściowy: dlaczego powinienem łączyć? Czy wstawiać i -NoClobber? Czy nie jest wystarczająca?

... | Out-File -Append 

i

... | Out-File -Append -NoClobber 

Zarówno dołączania informacji do pliku, zarówno nie nadpisać zawartość, zarówno utworzyć plik, jeśli nie istnieje. A jednak wszystkie przykłady w Internecie używają kombinacji -Append i -NoClobber.

Czy brakuje mi czegoś?

+0

pomocą noclobber nie nadmiernie zapisać plik. –

+0

Ale czy też 'append', nie? – Joost

+0

Nie, patrz poniżej. –

Odpowiedz

14

-NoClobber ustawi FileMode (jak system operacyjny powinien otworzyć plik) do CreateNew (= jeśli plik już istnieje wyjątek IOException zostaje wyrzucony), chyba-Append został określony w tym przypadku będzie to ustawić FileMode do dołączenia (= otwiera plik, jeśli istnieje i szuka końca pliku lub tworzy nowy plik).

Tak więc dla wszystkich celów praktycznych, -Append -NoClobber = -Append

+0

Dzięki za wyjaśnienia. Potwierdza to, co podejrzewałem. Wciąż nie do końca rozumiem, dlaczego, nawet w oficjalnej dokumentacji pomocy, używają kombinacji obu - ale przynajmniej mogę teraz swobodnie używać '-Append' bez' -NoClobber'. – Joost

0
  • -append (szukaj na końcu pliku i dodawanie nowych treści)
  • -NoClobber (throw ostrzeżenie, jeśli plik jest już istnieją)

Proszę przeczytać więcej na Microsoft Doc

Powiązane problemy