#!/bin/bash # The scan loop is useful when Automatic Document Feeder (ADF) can't be used scan_device_uri="hpaio:/net/OfficeJet_Pro_6970?ip=192.168.18.21" # ^This HP printer is remarkable. It's been working fine since 2017. I refill # the cardridge with UV ink very easily (I've never purchased ink cardridges # other than the ones that came with the printer). As of 2023, only the Cyan # and Black cardridges/inkjets work but Black&White print is all I need. # And the Linux support and CLI interface is amazing. # Automatic Document Feeder adf() { hp-scan --mode=color --resolution=300 --size=a4 --adf #--duplex } # Scans until terminated with ^C. Saves .png files on CWD. flatbed_loop() { echo "Warning: scan loop will run until terminated with Ctrl-C" i=0 while true; do # device show with $ hp-info hp-scan --mode=color --size=a4 --device=$scan_device_uri echo "page " $((i + 1)) " done, you have 4 seconds to load next page" sleep 4 i=$((expr $i + 1)) done # convert *.png output.pdf } flatbed_loop