Saya belajar sed saat ini. Ada tilde ini '~' yang membingungkan saya lebih dari apa pun.
Misalnya, perintahnya
sed -n '1~2 w output.txt' input.txt
sedang mencetak baris bernomor ganjil (ke file output.txt).
Dalam tutorial yang sama, itu juga diberikan bahwa ia melompati garis dari 1 hingga 2 dan kemudian mulai mencetak garis di sebelah baris nomor 2 jika kita menggunakan
sed -n '1~2 p' input.txt
Apa interpretasi absolut dari tilde ini?
Jawaban:
Ini adalah
sed
ekstensi GNU :Dua contoh Anda cocok dengan baris yang sama, tetapi yang pertama menulis (
w
) ke file sementara yang kedua mencetak (p
) ke mana pun output standar pergi.Secara umum, selalu merujuk pada manual perintah. Manual jarang ambigu. Penerapan perintah dengan menggabungkan beberapa aspek fungsionalitasnya mungkin sulit dijelaskan dalam tutorial kadang-kadang (dan kadang-kadang tutorial mencoba membuat hal-hal lebih mudah dipahami dengan mengulangi pernyataan yang sama dalam banyak cara, yang dapat menyebabkan kebingungan), tetapi manual adalah referensi yang pasti untuk setiap bit dari apa yang dilakukan perintah agregat.
sumber