Jak zastąpić plik za pomocą echa?


10

Przy użyciu echo "foo">> bar.txtwięcej niż jeden raz dołącza się do końca pliku. Jak nadpisywać za bar.txtkażdym razem?


2
Odpowiedź Dennisa jest poprawna. Zobacz man bashi wyszukaj (za pomocą /) sekcję „REDIRECTION”. W szczególności podrozdziały „Przekierowywanie danych wyjściowych” i „Dołączanie przekierowanych danych wyjściowych”.
RedGrittyBrick

Odpowiedzi:


28

>służy do przekierowania do pliku (zastąpienia go), natomiast >>do dołączenia.

Aby zastąpić bar.txt, użyj tego:

echo "foo" > bar.txt

1
Częściej, >jest określany jako przekierowania (standardowe danych do pliku), podczas gdy symbol rury |określa się jako rurowych (standardowe wyjście do innego procesu). Ryzykujesz, że wprowadzisz w błąd ludzi takich jak ja, gdy mówisz o >
dudkowaniu

@RedGrittyBrick: Widziałem orurowania w kilku książek (i mówiłem to od lat), ale przekierowanie wydaje się być znacznie bardziej powszechne. Dzięki.
Dennis

@Dennis Piping używa potoku |do połączenia wyniku jednego programu / polecenia z wejściem innego. Związane .
Daniel Beck


Zauważ, że zgodnie ze stroną 43, w PowerShell > foojest po prostu cukrem syntaktycznym | Out-File fooi dlatego jest formą dudkowania ;-)
Daniel Beck
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.