ich bin neu hier, ich hoffe doch ich stell die frage hier so das ihr mir weiter helfen könnt.
Ich möchte für BF2 ein kleines startskript erstellen, was zuerst prüft ob die IP-Adresse mit der serversettins.con(bei BF2) übereinstimmt und wenn nicht mich fragt ob ich sie entsprechen enfügen möchte und mir dann die ganzen karten anzeigt ich dann ne nr eintippe und er die entsprechende karte startet..
nen bissl hab ich schon so halbwegs hinbekommen, leider muss ich bei dieser methode alles manuel im skript eintragen:
hier schonmal mein bisheriges skript:
Code: Alles auswählen
#!/bin/bash
echo ""
echo "[1] Dalian Plant [2] Daqing Oilfieds"
echo "[3] Dragon Valley [4] Fushe Pass"
echo "[5] Gulf of Oman [6] Kubra Dam"
echo "[7] Mashtuur City [8] Operation Clean Sweep"
echo "[9] Sharqi Peninsula [10] SonghuaStalemate"
echo "[11] Strike at Karkand [12] Zatar Wetlands"
echo ""
read eingabe #es muss eine eingabe getan werden
#es wird die aktuelle IP von eth0 ausgelesen
serverip=$(/sbin/ifconfig eth0 |grep 'inet ' | cut -d : -f2 | cut -d ' ' -f1)
#es wird die IP-Adresse in der BF2-Config ausgelesen
seting=$(cat /home/gameserver/bf2/1.0/mods/bf2/settings/serversettings.con |grep serverIP)
einmal=${seting#*'"'} #wird zum vergleich zurechtgestuzt wir brauchen nur die reine IP-Adresse
zweitens=${einmal%*'"'}
#jetzt wird erstmal die IP geprüft und wenn sie nicht übereinstimmt wird eine meldung ausgeben
if [ $zweitens != $serverip ]; then echo "Du hast deine IP-Adresse noch nicht in die serversettings.con eingeragen! Bitte hol dies nach damit der Server läuft!!" exit 0
else
if [ $eingabe = 1 ]; then echo "mapList.append dalian_plant gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 2 ]; then echo "mapList.append daqing_oilfields gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 3 ]; then echo "mapList.append dragon_valley gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 4 ]; then echo "mapList.append fushe_pass gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 5 ]; then echo "mapList.append gulf_of_oman gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 6 ]; then echo "mapList.append kubra_dam gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 7 ]; then echo "mapList.append mashtuur_city gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 8 ]; then echo "mapList.append operation_clean_sweep gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 9 ]; then echo "mapList.append sharqi_peninsula gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 10 ]; then echo "mapList.append songhua_stalemate gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 11 ]; then echo "mapList.append strike_at_karkand gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
elif [ $eingabe = 12 ]; then echo "mapList.append zatar_wetlands gpm_cq 16" > mods/bf2/settings/maplist.con && sh start.sh
else
echo " "
echo "Du hast leider nicht das richtige gedrückt.."
fi
fi
exit 0
evtl kann man auch irgendwie die ordnerstruktur einlesen und es dann mittels select-kommando machn?? habs versuch leider ohne erfolg