Tôi có câu hỏi nhanh về lệnh AWK. Tôi cần lệnh in cho đến khi kết thúc của dòng trên cùng một dòng, nhưng sau đó khi nó được đến dòng tiếp theo tôi cần nó để in trên một dòng khác. Ví dụ sau sẽ cung cấp sự rõ ràng hơn.Lệnh AWK để in cho đến khi kết thúc dòng
Nói rằng tôi có một tập tin:
0 1 2 3 This is line one
0 1 2 3 This is line two
0 1 2 3 This is line three
0 1 2 3 This is line four
Tôi đã thử những điều sau đây và nhận được kết quả như sau
awk '{for(i=5;i<=NF;i++) print $i}' fileName >> resultsExample1
tôi nhận được sau trong resultsExample1
This
is
line
one
This
is
line
two
And so on....
Ví dụ 2:
awk 'BEGIN {" "} {for(i=5;i<=NF;i++) printf $1}' fileName >> resultsExample2
cho resultsExample2 tôi nhận được:
This is line one This is line two this is line three This is line four
Tôi cũng đã cố gắng:
awk 'BEGIN {" "} {for(i=5;i<=NF;i++) printf $1}' fileName >> resultsExample3
Nhưng kết quả là giống như trước một
Cuối cùng tôi muốn những điều sau:
This is line one
This is line two
This is line three
This is line four
Tôi rất biết ơn sự giúp đỡ của bạn! Cảm ơn trước :)
Trong ví dụ, tất cả các dòng có cùng số cột - luôn luôn là trường hợp của thông tin bạn nhập? –