-
Notifications
You must be signed in to change notification settings - Fork 0
/
dir-to-pdf.sh
executable file
·64 lines (54 loc) · 2.55 KB
/
dir-to-pdf.sh
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#!/bin/bash
#
# dir-to-pdf.sh Version 1.0 vom 04.01.2014
#
# Dieses Script holt alle Dateien aus einem Dropbox Verzeichnis in ein lokales
# Verzeichnis und druckt PDF Dateien mit CUPS. Die verarbeiteten Dateien werden
# dann in ein anderes Dropbox Verzeichnis verschoben.
#
# (C) 2014 Thomas Wenzlaff http://www.wenzlaff.de
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see {http://www.gnu.org/licenses/}.
#
# Dropbox Verzeichnis mit den Dateien die als PDF gedruckt werden sollen
# ist das /Apps/twuploader/input Verzeichnis
# Das Verzeichnis wo diese Script liegt
temp='/home/pi/tw-scripte'
# Dateien werden von Dropbox lokal auf den pi hierhin kopiert, das input Text-Verzeichnis
temp_in="$temp/input"
# Verzeichnis wo die verarbeiteten Dateien abgelegt werden
temp_out="$temp/output"
# Verzeichnis wo der Dropbox-Uploader installiert wurde
dropboxUploader_dir='/home/pi/Dropbox-Uploader'
# Das / Verzeichnis ist das /Apps/twuploader Verzeichnis ist so im uploader eingestellt
# Kopieren von Dropbox Verzeichnis /Appt/twupload/input in das temp Verzeichnis
# -q Quiet Mode, keine Ausgabe
$dropboxUploader_dir/dropbox_uploader.sh -q download /input ${temp}
IFS=$'\n'
for PrintFile in $(/bin/ls -1 ${temp_in})
do
# Kopieren der input Datei ins output Verzeichnis
cp "$temp_in/$PrintFile" "$temp_out/$PrintFile"
# Kopiere Orginal-Datei ins output Verzeichnis der Dropbox
$dropboxUploader_dir/dropbox_uploader.sh upload "$temp_in/$PrintFile" /output
# "Drucke in spooler und loesche nach erfolg die Datei $PrintFile"
# Drucke Datei (lösche mit -r die eingabe Date)
lpr -r $temp_in/$PrintFile
# Erzeugte PDF nach Dropbox hochladen, geht ja nur wenn der Druckspooler asyncron die PDF erzeugt hat
# Das wird dann in dem Script pdf-to-dropbox.sh erledigt
# Loeschen der input Datei in der Dropbox
$dropboxUploader_dir/dropbox_uploader.sh -q delete "/input/$PrintFile"
done
# CUPS Spooler Verzeichnise /var/spool/cups-pdf/ANONYMOUS/
# /home/pi/PDF/