Minulla on kansio, jota pollaan crontab:lla. Kun kansioon tulee tiedosto, niin tulostan sen.
Saako tämän tehtyä nopeammaksi, kuin crontab:lla ?
Tavoitteena on tulostaa sekä Ubuntulla että Androidilla.
Tällähetkellä on seuraavat säädöt ...
Ubuntu asiakkaalla...
alias
alias tulosta='/home/xxx/tulosta.sh '
cat /home/xxx/tulosta.sh
#!/bin/bash
scp $1 xxx@192.168.11.104:/home/xxx/runttaaulos/.
Ubuntupalvelimella:
$ cat /etc/crontab
...
* * * * * xxx /bin/bash -c "/home/xxx/getlist.sh"
#
$ cat /home/xxx/getlist.sh
#!/bin/bash
cd /home/xxx/runttaaulos
for i in $( ls ); do
/home/xxx/getfilesizes.sh "$i"
echo item: $i
sleep 10
/home/xxx/getfilesizes.sh "$i"
done
$ cat getfilesizes.sh
#!/bin/bash
cd /home/xxx/runttaaulos
FILENAME=$1
FILESIZE=$(stat -c%s "$FILENAME")
echo "$FILESIZE"
touch /home/xxx/runttaus/$FILENAME
oldfilesize=`cat /home/xxx/runttaus/$FILENAME`
if [ $FILESIZE -gt 0 ];then
echo "koko>0";
if [ $oldfilesize -eq $FILESIZE ]; then
mv "/home/xxx/runttaaulos/$FILENAME" /home/xxx/runtsizes/.
cd /home/xxx/runtsizes/.
if [ ${FILENAME: -4} == ".pdf" ]
then
echo "On jo pdf"
lp $FILENAME
rm $FILENAME
else
if [ ${FILENAME: -3} == ".ps" ]
then
echo "On jo ps"
lp $FILENAME
rm $FILENAME
else
convert -density 300 $FILENAME -density 300 $FILENAME.pdf
rm $FILENAME
lp $FILENAME.pdf
rm $FILENAME.pdf
fi
fi
rm /home/xxx/runttaus/$FILENAME
else
echo "$FILESIZE" > /home/xxx/runttaus/$FILENAME
fi
else
echo "$FILESIZE" > /home/xxx/runttaus/$FILENAME
fi
Yksinkertaisesti: Haluaisin ajaa getlist.sh:n, kun tiedosto on tallentunut runttaaulos-kansioon. Scriptikoodi on gpl:llää.