Rozumiem, że sed
to polecenie do manipulowania plikiem tekstowym.
Z mojego Googlinga wydaje się, że -i
oznacza to wykonanie operacji na samym pliku, czy to prawda?
Co '1d'
?
W sed
:
-i
opcja edytuje plik wejściowy w miejscu
'1d'
usunie pierwszy wiersz pliku wejściowego
Przykład:
% cat file.txt
foo
bar
% sed -i '1d' file.txt
% cat file.txt
bar
Pamiętaj, że przez większość czasu dobrym pomysłem jest zrobienie kopii zapasowej podczas korzystania z tej -i
opcji, aby mieć kopię zapasową oryginalnego pliku na wypadek nieoczekiwanej zmiany.
Na przykład, jeśli wykonasz:
sed -i.orig '1d' file.txt
oryginalny plik zostanie zachowany jako file.txt.orig
plik zmodyfikowany file.txt
.
-i
sprawdzenia, co się stanie, a następnie użyć-i
do zmiany pliku.1. a)
Drukuje zawartość
file.txt
; z wyłączeniem pierwszej linii; na standardowe wyjście.2. a)
Drukuje zawartość
file.txt
; z wyłączeniem pierwszej linii; z powrotem wfile.txt
; nadpisywanie oryginału.2. b)
Tworzy kopię zapasową oryginału (as
file.txt.back
) przed dokonaniem zmian. Z wyjątkiem FreeBSDsed
sufiks (tutaj.back
) musi być dołączony do-i
opcji (w tym samym argumencie, bez spacji między-i
i.back
).3. a)
Drukuje zawartość
file.txt
; z wyłączeniem drugiej linii; na standardowe wyjście.(Podanie dowolnej liczby spowoduje usunięcie odpowiedniej linii).
Kompatybilny również z
-i
flagą.3. b)
Drukuje zawartość
file.txt
; z wyłączeniem wszystkich oprócz pierwszej linii; na standardowe wyjście.(Innymi słowy; drukowany jest tylko pierwszy wiersz).
Kompatybilny również z
-i
flagą.3. c)
Drukuje zawartość
file.txt
; z wyłączeniem ostatniej linii; na standardowe wyjście.Kompatybilny również z
-i
flagą.źródło
W
sed -h
mają:i „wykonaj operację na samym pliku”. absolutnie to.
I
man
powiedział: „Sed jest edytorem strumieniowym. Do wykonywania podstawowych przekształceń tekstu w strumieniu wejściowym (pliku lub danych wejściowych z potoku) służy edytor strumieni. ”jako twoje pytanie
oznacza: usuń pierwszy wiersz w pliku
"file_name"
na miejscu i wykonaj kopię zapasową do pliku. (podobnie jak edytowanie pliku i usuwanie pierwszego wiersza bezpośrednio).źródło