Từ các tài liệu sed:lệnh 'd' trong tiện ích sed
d Delete the pattern space; immediately start next cycle.
có nghĩa là gì bởi chu kỳ tiếp theo? Tôi hiểu rằng sed sẽ không áp dụng các lệnh sau sau lệnh d và bắt đầu đọc dòng tiếp theo từ luồng đầu vào và xử lý nó. Nhưng có vẻ như đây không phải là sự thật. Xem exampel này:
[[email protected] ~]# cat -A test.txt
aaaaaaaaaaaaaa$
$
bbbbbbbbbbbbb$
$
$
ccccccccc$
ddd$
$
eeeeeee$
[[email protected] ~]# cat test.txt | sed '/^$/d;p;p'
aaaaaaaaaaaaaa
aaaaaaaaaaaaaa
aaaaaaaaaaaaaa
bbbbbbbbbbbbb
bbbbbbbbbbbbb
bbbbbbbbbbbbb
ccccccccc
ccccccccc
ccccccccc
ddd
ddd
ddd
eeeeeee
eeeeeee
eeeeeee
[[email protected] ~]#
Nếu ngay lập tức bắt đầu chu kỳ tiếp theo, lệnh p sẽ không có bất kỳ đầu ra.
Bất cứ ai cũng có thể giúp tôi giải thích điều đó? Cảm ơn.
Tôi hiểu rồi. Cảm ơn! –
Bạn được chào đón! –