Napisałem kiedyś sobie taki prosty skrypcik w bashu - może się przyda:
#!/bin/bash
mv /home/misiak/xxx/polecenia /home/misiak/xxx/polecenia.old
echo "ip dhcp-server lease remove [find]" >> /home/misiak/xxx/polecenia
echo "ip dhcp-server network remove [find]" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle remove [find]" >> /home/misiak/xxx/polecenia
echo "queue tree remove [find]" >> /home/misiak/xxx/polecenia
echo "queue tree add name=Download parent=global-out queue=PCQ_Download max-limit=35M" >> /home/misiak/xxx/polecenia
echo "queue tree add name=Upload parent=global-in queue=PCQ_upload max-limit=10M" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=prerouting src-address=
94.240.47.0/24 dst-address=
94.240.47.0/24 action=accept" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=prerouting src-address=
192.168.168.0/23 action=mark-routing new-routing-mark=ittmedia" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=prerouting src-address=
192.168.168.0/23 protocol=tcp port=80,443,21,3389 action=mark-routing new-routing-mark=lukman" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=prerouting src-address=
94.240.47.0/24 action=mark-routing new-routing-mark=lukman" >> /home/misiak/xxx/polecenia
echo "SELECT name,inet_ntoa(address),mask,gateway,dns,dns2 FROM networks" | mysql -u"root" -p"xxxxx" lms | while read LINE
do
kotx=($LINE)
echo "ip dhcp-server network add address=${kotx[1]}/${kotx[2]} gateway=${kotx[3]} dns-server=${kotx[4]},${kotx[5]} comment=${kotx[0]}" >> /home/misiak/xxx/polecenia
done
echo "SELECT
nodes.name, inet_ntoa(nodes.ipaddr), macs.mac FROM nodes,macs WHERE
nodes.id=macs.nodeid" | mysql -u"root" -p"xxxxxxx" lms | while read LINE
do
kot=`echo "$LINE" | awk 'BEGIN { FS=" " } { print $1 }'`
kot1=`echo "$LINE" | awk 'BEGIN { FS=" " } { print $2 }'`
kot2=`echo "$LINE" | awk 'BEGIN { FS=" " } { print $3 }'`
echo "ip dhcp-server lease add address=$kot1 mac-address=$kot2 comment=$kot" >> /home/misiak/xxx/polecenia
done
echo "SELECT name,inet_ntoa(ipaddr) FROM nodes" | mysql -u"root" -p"xxxxxx" lms | while read LINE
do
kotx=($LINE)
#echo "ip firewall mangle add chain=postrouting dst-address=${kotx[1]} action=mark-connection new-connection-mark=d_${kotx[1]} comment=${kotx[0]}" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=postrouting dst-address=${kotx[1]} action=mark-packet new-packet-mark=d_${kotx[1]} passthrough=no comment=${kotx[0]}" >> /home/misiak/xxx/polecenia
#echo "ip firewall mangle add chain=prerouting src-address=${kotx[1]} action=mark-connection new-connection-mark=u_${kotx[1]} comment=${kotx[0]}" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=prerouting src-address=${kotx[1]} action=mark-packet new-packet-mark=u_${kotx[1]} passthrough=no comment=${kotx[0]}" >> /home/misiak/xxx/polecenia
done
echo "SELECT
customers.id, tariffs.uprate, tariffs.upceil, tariffs.downrate, tariffs.downceil, CONCAT(REPLACE(customers.lastname,' ','_'),'_',REPLACE(
customers.name,' ','_')) FROM customers,tariffs,assignments WHERE
customers.id=assignments.customerid AND assignments.tariffid=
tariffs.id" | mysql -u"root" -p"xxxxxxx" lms | while read LINE
do
kotx=($LINE)
kotxd=$[${kotx[4]}*2]
kotxc=$[${kotx[2]}*2]
echo "queue tree add name=d_${kotx[0]} parent=Download queue=PCQ_Download limit-at=${kotx[3]}k max-limit=${kotx[4]}k burst-limit="$kotxd"k burst-time=5 comment=${kotx[0]}">> /home/misiak/xxx/polecenia
echo "queue tree add name=u_${kotx[0]} parent=Upload queue=PCQ_upload limit-at=${kotx[1]}k max-limit=${kotx[2]}k burst-limit="$kotxc"k burst-time=5 comment=${kotx[0]}">> /home/misiak/xxx/polecenia
echo ":put ${kotx[0]}" >> /home/misiak/xxx/polecenia
done
echo "SELECT name, inet_ntoa(ipaddr), ownerid,access FROM nodes " | mysql -u"root" -p"xxxxxxxxx" lms | while read LINE
do
kotx=($LINE)
kota=${kotx[3]}
if [ $kota == 1 ]
then
echo "queue tree add name=d_${kotx[0]} parent=d_${kotx[2]} packet-mark=d_${kotx[1]} comment=${kotx[0]}">> /home/misiak/xxx/polecenia
echo "queue tree add name=u_${kotx[0]} parent=u_${kotx[2]} packet-mark=u_${kotx[1]} comment=${kotx[0]}">> /home/misiak/xxx/polecenia
else
echo "queue tree add name=d_${kotx[0]} parent=d_${kotx[2]} packet-mark=d_${kotx[1]} comment=${kotx[0]} limit-at=500 max-limit=1k">> /home/misiak/xxx/polecenia
echo "queue tree add name=u_${kotx[0]} parent=u_${kotx[2]} packet-mark=u_${kotx[1]} comment=${kotx[0]} limit-at=500 max-limit=1k">> /home/misiak/xxx/polecenia
#!/usr/bin/expect --
set timeout 30
set IP [lindex $argv 0]
spawn bash -c "cat /home/misiak/xxx/polecenia | ssh misiak@94.x.x.x"
expect "password:"
send "xxxxx\r"
interact
wait
fi
done