Próbowałem znaleźć sposób przekazania tekstu do pliku bez nadpisywania tego, co już tam jest za pomocą >polecenia i zdałem sobie sprawę, że nie wiem, jak się nazywa. Szukając prawej strzałki lub prawej Chevron lub więcej niż polecenia nie wykazały niczego. Zawsze tylko to nazywałem pass .
shell
io-redirection
terminology
blarg
źródło
źródło
noclobber
jest ustawiona,>|
zastąpi i pozwoli na spychanie pliku.>
jest operatorem przekierowania . Zauważ, że użycie>
przekierowania do zwykłego pliku zastąpi to, co już tam jest, chyba że ustawiony jest noclobber .>>
dołącza się na końcu pliku.źródło
noclobber
zostało ustawione (bash).noclobber
to nie tylko bzdury. Jest częścią POSIXJak odpowiedzieli inni ludzie,
>
nie jest to polecenie, ale operator przekierowania. Jednak termin „operator przekierowania” nie odnosi się konkretnie do>
, lecz szeregu różnych możliwych operatorów przekierowania. Tedash
wykazy strona człowiek odpowiednio następujące operatory przekierowania:Nie jestem pewien, czy dla każdego istnieje poprawna indywidualna nazwa. Może po przejrzeniu starych instrukcji obsługi powłoki znajdziesz coś interesującego. To źródło , poprawne lub niepoprawne, z pewnością ma nazwę kilku z nich:
Ale również:
Nie sądzę jednak, aby było to naprawdę poprawne, ponieważ
2
jest to technicznie argument, a nie część operatora.Krótki przegląd (w przypadku, gdy nie rozpoznajesz żadnego z powyższych):
W
bash
tobie także:źródło
<<-
usuwa wiodących tabulatorów i spacji?>
przekierowuje dane wyjściowe do pliku (lub urządzenia), zastępując wszystko, co już tam istnieje>>
przekierowuje wyjście do pliku (lub urządzenia) dołączając do wszystkiego, co już tam istnieje<
przekierowuje dane z pliku (lub urządzenia) do programu lub urządzenia<<
tutaj dokumentźródło
<<
jest tutaj dokument