Raspberry Pi -- Bash Script İle Klasör İçindeki Dosyalara İşlem
Raspberry Pi -- Bash Script İle Klasör İçindeki Dosyalara İşlem Yapmak
Önceki örnekte python ile dropbox'a dosya gönderimi vardı. Şimdi klasör içindeki dosyaları listeleyip bunları tek tek dropbox'a gönderen ve bir gönderdiğini tekrar göndermemek için report.txt isimli bir log dosyası tutan örnek sh dosyamızı yazalım.
İlk etapta klasör içindeki dosyalar şu şekilde listelenir:
for entry in /mnt/usb/motion/*İkinci etapta report.txt dosyası okuma ve yazma işlemleri
do
echo "dosya=$entry"
fi
done
Okuma işlemi:
FILE=/mnt/usb/report.txt
while read line
do
#echo "Okunan satır =$line"
done < $FILE
Yazma işlemi :
echo "Birşeyler yaz" >> report.txt
Sonuçta tüm bunları birleştirdiğimizde klasörümüzdeki dosyaları listeletip bunları eğer daha önce gönderilmemişse dropbox hesabımıza gönderen script örneğinin tam kodu aşağıdaki gibidir.
#!/bin/bash
FILE=/mnt/usb/report.txt
#Send files to dropbox account
for entry in /mnt/usb/motion/*
do
dontSend="false"
while read line
do
#echo "$line:$entry"
if [ "$line" = "$entry" ]
then
echo "$line gonderilmis.."
dontSend="true"
break
fi
done < $FILE
if [ "$dontSend" = "false" ]
then
echo "Su anda gonderilecek dosya=$entry"
python RaspiDropbox.py "$entry"
echo "$entry" >> report.txt
fi
done
Yorumlar