`cut -d: -f5-` mencetak garis walaupun tidak memiliki titik dua


12

Dengan asumsi file bernama "file" yang berisi baris:

foo:bar:baz:qux:quux
one:two:three:four:five:six:seven
alpha:beta:gamma:delta:epsilon:zeta:eta:theta:iota:kappa:lambda:mu
the quick brown fox jumps over the lazy dog

Jika kita menggunakan perintah cut dengan opsi-opsi ini kita mendapatkan:

$ cut -d ":" -f 5- file
quux
five:six:seven
epsilon:zeta:eta:theta:iota:kappa:lambda:mu
the quick brown fox jumps over the lazy dog

Pada baris terakhir, karakter titik dua tidak ditemukan secara normal sehingga seharusnya tidak mengambil garis itu karena kita mulai dengan bidang ke-5 hingga akhir baris.

Kenapa begitu?

Jawaban:


16

Secara default cutdengan -fopsi mencetak setiap baris yang tidak mengandung karakter pembatas. Gunakan -sjika Anda tidak menginginkannya:

$ cut -d ":" -f 5- -s file
quux
five:six:seven
epsilon:zeta:eta:theta:iota:kappa:lambda:mu
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.