我想使用zbarcam,但在阅读条形码后,它不会停止。
$ zbarcam | xvkbd -file - -window emacs
EAN-13:6941428130969
CODE-128:3096140900557
你知道我怎么能告诉bash在第一次打印stdout后杀死zbarcam吗?
答案 0 :(得分:1)
尝试
tmp=/tmp/barcode.$$ # Note: security risk
zbarcam > $tmp &
pid=$!
# Sleep until file has content
while [[ ! -s $tmp ]] ; do
sleep 1
done
kill $pid
cat $tmp
请注意,如果zbarcam不刷新其输出,它可能无效。
答案 1 :(得分:1)
你试过这个吗?
zbarcam | head -1 | xvkbd -file - -window emacs
答案 2 :(得分:-1)
tmp=/tmp/barcode.$$ # Note: security risk
zbarcam > $tmp &
pid=$!
# Sleep until file has content
while [[ ! -s $tmp ]] ; do
sleep 1
done
kill $pid
cat $tmp