Mail files
From LUGUM
mail_files
Dieses Script Mailt alle Dateien in einem Verzeichnis an eine Adresse.
# author: Andreas Kraus <lug@ak1301.de>
# $Revision: 0.1 $
#
# licence: GPL
# http://www.gnu.org/licenses/gpl.html
#
if [ $# -ne 2 ]; then
echo "Usage: $0 [Verzeichnis] [E-Mail]"
exit 1
fi
cd $1
find . -type f -name '* *' -exec /usr/local/bin/rename.sh '{}' \;
cd $1
FILE=""
FILES=""
for file in * ; do
if [ ! $file == backup ]; then
FILE="${FILE} -a $file"
FILES="${FILES} $file"
fi
done
if [ ! -d ${1}/backup ]; then
mkdir -p ${1}/backup
fi
if [ $FILE ]; then
mutt -x -s "Mail vom Terminalserver" $FILE $2 < /dev/null && mv ${FILES} ${1}/backup/
fi
Dazugehöriges rename.sh
#!/bin/bash
# /usr/local/bin/rename.sh
# ersetzt Leerzeichen durch Unterstriche
# $1 ist der uebergebene Dateiname (evtl. mit Pfad)
#
# ueberprueft, ob ein Argument uebergeben wird
if [ $# -ne 1 ]
then
echo "Usage: $0 dateiname"
exit 1
fi
# Speichert den uebergebenen Dateinamen in input
input=$1
# extrahiert den Pfad (falls vorhanden)
directory=`dirname "$input"`
# extrahiert den Dateinamen (falls Pfad vorhanden)
# entfernt Leerzeichen und ersetzt sie durch einen Unterstrich
# speichert das Resultat in filename
filename=`basename "$input" | tr ' ' '_'`
# fuehrt die Umbenennung mit dem move befehl durch
mv -i "$input" "${directory}/${filename}"

