Improve printer installation script
- Remove all printers from known print servers before installing again - Add second print server
This commit is contained in:
parent
b47d453922
commit
3e02142123
2 changed files with 132 additions and 130 deletions
|
@ -18,13 +18,14 @@ EOF
|
|||
## Remove all printers not wanted:
|
||||
for p in $installedprinters ; do
|
||||
printer_ip=$(lpstat -v "${p}" | sed -nE "s%.*ipp://(.+)/printers.*%\1%p")
|
||||
if [[ ! "${hostgroup}" =~ "$p" ]] && [[ ! "${usergroup}" =~ "$p" ]] \
|
||||
&& [[ -n $printer_ip ]] && (echo "${printservers}" | grep -w -q "${printer_ip}"); then
|
||||
if [[ -n $printer_ip ]] && (echo "${printservers}" | grep -w -q "${printer_ip}"); then
|
||||
echo "Removing print queue '$p'."
|
||||
lpadmin -x "$p"
|
||||
fi
|
||||
done
|
||||
|
||||
installedprinters="$(lpstat -v | cut -f 3 -d" " | sed 's/:$//' )"
|
||||
|
||||
## Add all printers needed:
|
||||
for ps in $printservers ; do
|
||||
echo "Checking print server '$ps' for available printers:"
|
||||
|
@ -39,6 +40,7 @@ for ps in $printservers ; do
|
|||
timeout 10 lpadmin -p "$p" -E -v \
|
||||
"ipp://$ps/printers/$p" \
|
||||
-m "driverless:ipp://$ps/printers/$p" || echo "Adding queue '$p' failed."
|
||||
installedprinters+=" $p"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue