Tôi muốn xem đầu ra của các lệnh lớn bị chậm lại, như trình chiếu với ví dụ tự động, độ trễ 500ms giữa mỗi lần cuộn. Cách đơn giản nhất để đạt được điều này là gì?
Tôi muốn xem đầu ra của các lệnh lớn bị chậm lại, như trình chiếu với ví dụ tự động, độ trễ 500ms giữa mỗi lần cuộn. Cách đơn giản nhất để đạt được điều này là gì?
Câu trả lời:
Một giải pháp đơn giản sử dụng bash
:
function scroll
{
while read -r ; do echo "$REPLY" ; sleep ${1:-0.5} ; done
}
long_command | scroll [delay]
delay
là tùy chọn và mặc định là 0.5
.
Thoát với Ctrl+C
Nếu bạn có thể sống với độ phân giải 1s, bạn có thể làm tail -n +0 -f -s <seconds>
.
long_command
có thể được tạo ra trong chưa đầy một giây vì vậy không có điểm nào trong việc bỏ phiếu cho tính hoàn chỉnh của nó <interval>
và thực sự không hiệu quả với tôi.
echo /**
trong đầu ra của long_command (ví dụ:cat
một tệp) sẽ bị kẹt và làm ngập phiên cuối của bạn nếu bạn không đặt dấu ngoặc kép"$REPLY"
.