blob: 41f52c4ed7a55b15116d8b006b3ee7d0f7382068 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#!/bin/bash
# lpdf -- print with lp to a PDF file; output the filename to stdout
move_pdf()
{
local o f="$1"
o=$f
o=${o##*/}
o=${o%%__*}
o=${o%.txt}.pdf
mv -i -T -- "$f" "$o"
}
run_lp()
{
set -x
lp "$@" -d PDF
}
extract_lp_pdf_filename()
{
read _ _ _ pdf _
case "$pdf" in
PDF-*) glob=$(printf "~/PDF/*-job_%s.pdf\n" "${pdf#PDF-}") ;;
*) exit 1 ;;
esac
sleep=1
while true
do
if f=$(shopt -s failglob; 2>/dev/null eval "echo $glob")
then
printf "%s\n" "$f"
break
else
sleep $sleep
sleep=$((sleep + 1))
fi
done
}
set -e
read pdf < <(run_lp "$@" | extract_lp_pdf_filename)
move_pdf "$pdf"
|