Điểm:0

Nhận đầu ra đầu tiên từ STDOUT và kết thúc quá trình

lá cờ hn

Tôi muốn quét một mã QR và trả kết quả về STDOUT. tôi đa kham pha ra ZBar, đây là một chương trình nhỏ xinh hầu như làm được mọi thứ tôi cần.

$ zbarcam --raw

quét mã QR bằng máy ảnh PC và trả dữ liệu về STDOUT. Tuy nhiên, nó không chấm dứt. Chương trình quét nhiều mã và trả về chúng. Nó chỉ dừng lại bằng cách đóng cửa sổ video hoặc gửi một ngắt.

Nói chung, làm cách nào để tôi chỉ nhận đầu ra đầu tiên từ STDOUT, chấm dứt quá trình và sau đó gửi lại đầu ra đã nhận tới STDOUT trong dòng lệnh? Tôi có lẽ cần một tập lệnh Bash cho điều đó phải không?

bac0n avatar
lá cờ cn
tùy chọn `-1, --oneshot` không kết thúc zbar?
trizuz avatar
lá cờ hn
Không có một lựa chọn như thế này.
bac0n avatar
lá cờ cn
dường như được giới thiệu trong [0.23.1](https://github.com/mchehab/zbar/releases/tag/0.23.1)
Điểm:0
lá cờ cn

sử dụng đánh đậpvà giả sử chỉ có một dòng để đọc (qrcode không có dòng mới được nhúng), bạn có thể thử

(tiếng vang $BASHPID; exec zbarcam --raw ) | 
(đọc pid; IFS= read -r line; kill -hup "$pid"; printf "%s\n" "$line")

Các $BASHPID là vì $$ không thay đổi trong các lớp con, lớp vỏ mẹ cũng vậy pid. Các NẾU = đọc -r nên giữ lại dấu gạch chéo ngược và khoảng trắng ở đầu trong đầu vào.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.