Bạn có thể làm điều này bằng tee
, mà đọc từ stdin và viết để stdout và các tập tin. Kể từ khi tee
cũng kết quả đầu ra để stdout, tôi đã chọn để trực tiếp đầu ra của nó để /dev/null
. Lưu ý rằng bash mở rộng phù hợp với các tập tin hiện có, do đó, các tập tin bạn đang cố gắng ghi vào phải tồn tại trước khi thực hiện lệnh này để nó hoạt động.
$ echo "" | tee /home/jem/rep_0[1-3]/logs/SystemOut.log > /dev/null
Là một mặt lưu ý, các ""
bạn vượt qua để echo
là không cần thiết.
Không liên quan trực tiếp đến câu hỏi của bạn, nhưng nếu bạn không dựa vào mở rộng bash, bạn có thể có nhiều đường ống.
$ echo hello > foo > bar > baz
$ cat foo bar baz
hello
hello
hello
Cảm ơn. Tôi bỏ qua để xác định rằng tôi muốn sử dụng tham chiếu tệp ký tự đại diện. – Synesso
Sau đó xem câu trả lời của Laurence. – Robert
Bạn có thể chỉ định nhiều đối số cho 'tee'. Bạn không cần phải chạy nó hai lần. –