Làm thế nào tôi có thể phân tích đầu ra của một lệnh bằng nhiều lệnh mà không cắt ngắn ở mỗi bước?
Ví dụ ls -al|grep -i something
sẽ chuyển mọi dòng có "cái gì đó" trong ống tiếp theo, điều đó cũng tốt, nhưng điều đó cũng có nghĩa là mọi dòng khác trong ống đều bị loại bỏ vì không phù hợp với điều kiện. Điều tôi muốn là có thể hoạt động trên một ống đơn bằng nhiều lệnh độc lập.
Trong trường hợp này, một đường ống từ Mutt vượt qua toàn bộ nội dung thư. Tôi muốn nhận grep, sed, xóa và gán từng cái cho các biến bash.
Ban đầu, điều tôi muốn là có thể gán "id tin nhắn" cho một biến, "chủ đề" cho một biến khác, v.v. Sau đó chuyển chúng vào các đối số lệnh thích hợp.
Đây là cách nó sẽ được
MessageBodyFromMutt|grep something -Ax -Bx |grep another thing from the original message| sed some stuff from the original message| cut from here to there
Rõ ràng dòng trên không làm những gì tôi muốn.
Tôi muốn tất cả các lệnh này hoạt động trên cơ thể thông điệp ban đầu. Tôi hy vọng nó có ý nghĩa
sh
, không phải bash
. Bạn có thể cấu hình nó để chạy bash? Hoặc chạy bash -c '...'
.
tee
. Nó rèn các đường ống của bạn (mặc dù không phải các biến).