Chuyển hướng đầu vào và đầu ra Terminal trên máy Mac
Từ dòng lệnh, bạn có thể chuyển hướng đầu vào và đầu ra từ một lệnh đến một tệp hoặc đến một lệnh khác.
Chuyển hướng đầu ra từ lệnh nếu bạn muốn ghi lại kết quả việc chạy lệnh và lưu trữ lệnh trong tệp để sử dụng sau. Tương tự, chuyển hướng đầu vào từ một tệp đến lệnh nếu bạn muốn cung cấp cho lệnh dữ liệu đầu vào đặt trước, thay vì phải nhập dữ liệu đó.
Sử dụng các ký tự sau để chuyển hướng đầu vào và đầu ra:
Chuyển hướng | Mô tả | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
> | Sử dụng dấu ngoặc nhọn phải để chuyển hướng đầu ra lệnh tới tệp. | ||||||||||
< | Sử dụng dấu ngoặc nhọn trái để sử dụng các nội dung của tệp dưới dạng đầu vào lệnh. | ||||||||||
>> | Sử dụng hai dấu ngoặc nhọn phải để thêm đầu ra từ lệnh đến tệp. |
Ngoài sử dụng chuyển hướng tệp, bạn cũng có thể chuyển hướng đầu ra của một lệnh tới đầu vào của lệnh khác bằng ký tự thanh dọc hoặc ống. Bạn có thể kết hợp các lệnh theo cách này để thực hiện các phiên bản phức tạp hơn của cùng lệnh.
Ví dụ: lệnh sau đây sẽ chuyển nội dung đã định dạng của trang hướng dẫn zsh
sang công cụ grep
, tìm kiếm trong nội dung này để tìm các dòng chứa từ commands. Kết quả là một danh sách các dòng có văn bản cụ thể, thay vì toàn bộ trang man.
% man zsh | grep commands
Các ống tiêu chuẩn bao gồm:
stdin: Ống đầu vào tiêu chuẩn là nơi lệnh nhận đầu vào. Theo mặc định, bạn nhập đầu vào từ giao diện dòng lệnh. Bạn có thể chuyển hướng đầu ra từ các tệp hoặc các lệnh khác tới stdin.
stdout: Ống đầu ra tiêu chuẩn là nơi đầu ra lệnh được gửi đi. Theo mặc định, đầu ra lệnh được gửi tới dòng lệnh. Bạn có thể chuyển hướng đầu ra từ dòng lệnh đến các lệnh và công cụ khác.
stderr: Ống lỗi tiêu chuẩn là nơi thông báo lỗi được gửi đi. Theo mặc định, lỗi được hiển thị trên dòng lệnh cùng với đầu ra tiêu chuẩn.
Để biết thêm thông tin về chuyển hướng, hãy xem trang man zsh.