Отправка файлов по bluetooth во FreeBSD
28-12-2007 17:28
к комментариям - к полной версии
- понравилось!
Недавно записывал студентам электронные книги. Девочка попросила скинуть по bluetooth. Хе, так это ведь гениальная идея! Оборудовать аудитории блютуз-хотспотами или как их там и хранить на них учебные материалы. А пока придумал скрипт для автоматизации рассылки файлов.
#!/bin/sh
#:)
hcsecdconf="/etc/bluetooth/hcsecd.conf"
hcsecdhosts=`cat $hcsecdconf | grep -v ^# | grep 'bdaddr' | cut -d';' -f1`
for str in $hcsecdhosts
do
hcsecdmaks=$hcsecdmaks' '`echo $str | grep '..:..:..:..:..:..'`
done
#echo $hcsecdmaks
#exit 0
macaddrs=`hccontrol -n ubt0hci inquiry 2> /dev/null | grep 'BD_ADDR: ..:..:..:..:..:..'| sort -u | cut -d' ' -f2`
#echo $macaddrs
for str in $macaddrs
do
host=`hccontrol -n ubt0hci remote_name_request $str 2> /dev/null | grep -v Page | cut -d' ' -f2`
if [ '`echo $hcsecdmaks | grep $str 2> /dev/null | cut -d' ' -f1`' != '`echo`' ]; then
echo $str' по имени '`echo $host | cut -d' ' -f2`' уже описан в hcsecd.conf'
else
echo 'Устройство '`echo $host | cut -d' ' -f2`' с адресом '`echo $host | cut -d' ' -f1`' не в списке. Добавить?(y/n)'
read uinp
if [ "$uinp" = "y" ]; then
echo "Введите пин:"
read pin
echo "device {" >> /etc/bluetooth/hcsecd.conf
printf "\tbdaddr\t%s;\n" $str >> /etc/bluetooth/hcsecd.conf
printf "\tname\t\"%s\";\n" `echo $host | cut -d' ' -f2` >> /etc/bluetooth/hcsecd.conf
printf "\tkey\t\"nokey\";\n" >> /etc/bluetooth/hcsecd.conf
printf "\tpin\t\"%s\";\n" $pin >> /etc/bluetooth/hcsecd.conf
echo "}" >> /etc/bluetooth/hcsecd.conf
sudo /etc/rc.d/hcsecd restart
fi
# echo $str
fi
echo 'Отправить файл на устройство '`echo $host | cut -d' ' -f2`' с адресом '`echo $host | cut -d' ' -f1`'?(y/n)'
read uinp
if [ "$uinp" = "y" ]; then
obexapp -a $str -C OPUSH -n put kislovodsk.jpg
fi
done
#exit 0
Для работы скрипта понятное дело нужен /usr/ports/comms/obexapp.
вверх^
к полной версии
понравилось!
в evernote