ftpsync2.sh
download
#!/bin/sh
# DESCR: FTP syncing script
# AUTHOR: Dariusz Cieślak, cieslakd at gazeta.pl
#
# USAGE:
#
# ftpsync remote_dir stamp_file [files ...] | pftp hostname
# touch stamp_file
#
# I know this is simple, but allows high flexibility
# A this time allows only two-level hierarchy od directories
REMOTE_DIR="$1"
STAMP="$2"
test -z "$REMOTE_DIR" && {
echo "$0 remote_dir [stamp_file]"
exit 1
}
shift # remote_dir
shift # stamp file
echo "mkdir $REMOTE_DIR"
save() {
a="$1"
if test -z "$STAMP" -o $a -nt "$STAMP"
then
if test -d $a
then
echo "mkdir $REMOTE_DIR/$a"
else
echo "put $a $REMOTE_DIR/$a"
case $a in
*cgi)
echo "chmod 0755 $REMOTE_DIR/$a"
;;
esac
fi
fi
}
for a
do
save $a
done
#while read a
#do
# save $a
#done
(...)
Nie ma bowiem łatwych odpowiedzi.
Nie istnieje nic takiego jak najlepsze
rozwiązanie - zarówno jeśli chodzi o
narzędzia,
jak i języki czy systemy operacyjne. Są
jedynie systemy, które mogą być bardziej
odpowiednie w konkretnych okolicznościach.
I tu właśnie do gry wchodzi pragmatyzm.
Nie należy przywiązywać się do żadnej
określonej metody, ale mieć na tyle rozległą
wiedzę i doświadczenie, by w danej sytuacji
wybrać dobre rozwiązanie.
(...)
Andrew Hunt, David Thomas
"Pragmatyczny Programista"