Saya mengerti itu sed
adalah perintah untuk memanipulasi file teks.
Dari Googling saya, sepertinya -i
berarti melakukan operasi pada file itu sendiri, apakah ini benar?
Bagaimana dengan '1d'
?
Di sed
:
-i
Opsi akan mengedit file input di tempat
'1d'
akan menghapus baris pertama dari file input
Contoh:
% cat file.txt
foo
bar
% sed -i '1d' file.txt
% cat file.txt
bar
Perhatikan bahwa, sebagian besar waktu adalah ide yang baik untuk mengambil cadangan saat menggunakan -i
opsi sehingga Anda memiliki cadangan file asli jika terjadi perubahan yang tidak terduga.
Misalnya, jika Anda melakukannya:
sed -i.orig '1d' file.txt
file asli akan disimpan file.txt.orig
dan file yang dimodifikasi akan disimpan file.txt
.
-i
melihat apa yang terjadi terlebih dahulu, kemudian gunakan-i
untuk benar-benar mengubah file.1. a)
Mencetak isi
file.txt
; tidak termasuk baris pertama; ke output standar.2. a)
Mencetak isi
file.txt
; tidak termasuk baris pertama; kembali kefile.txt
; menimpa yang asli.2. b)
Membuat cadangan asli (as
file.txt.back
), sebelum melakukan perubahan. Kecuali dengan FreeBSDsed
, sufiks (di sini.back
) harus dilampirkan pada-i
opsi (dalam argumen yang sama, tidak ada spasi di antara-i
dan.back
).3. a)
Mencetak isi
file.txt
; tidak termasuk baris kedua; ke output standar.(Menentukan nomor apa pun akan menghapus baris yang sesuai)
Juga kompatibel dengan
-i
bendera.3. b)
Mencetak isi
file.txt
; tidak termasuk semua kecuali baris pertama; ke output standar.(Dengan kata lain; hanya baris pertama yang dicetak).
Juga kompatibel dengan
-i
bendera.3. c)
Mencetak isi
file.txt
; tidak termasuk baris terakhir; ke output standar.Juga kompatibel dengan
-i
bendera.sumber
Di
sed -h
miliki:dan 'melakukan operasi pada file itu sendiri.' itu mutlak.
Dan
man
berkata: 'Sed adalah editor aliran. Editor aliran digunakan untuk melakukan transformasi teks dasar pada aliran input (file atau input dari pipa). 'sebagai pertanyaan anda,
berarti: menghapus baris pertama dalam file
"file_name"
di tempat dan cadangan ke file. (Sama seperti mengedit file dan menghapus baris pertama secara langsung.)sumber