Я застрял в предоставлении двух условий в моем сценарии. Я могу читать две вещи -
- Что такое ближайший сервер
- Если это MacBook или что-нибудь еще
и затем используйте команду записи по умолчанию, чтобы изменить файл plist.
Как я могу добавить строку, которая проверяет обе вещи - MODEL & SERVER, а затем записать файл соответственно?
#!/bin/sh
# Get the logfile for this machine
dslog="/tmp/DSNetworkRepository/Logs/$(ioreg -l | grep IOPlatformSerialNumber | awk '{print $4}' | cut -d \" -f 2).log"
NEARESTSERVER=$(awk 'gsub(/.*server=|port=.*/,"")' $dslog | tail -1)
# get machine model
MACHINE_MODEL=`/usr/sbin/ioreg -c IOPlatformExpertDevice | grep "model" | awk -F\" '{ print $4 }'`
MacBook=`/usr/sbin/ioreg -c IOPlatformExpertDevice | grep "model" | cut -c21-27`
# Check if the Model is MacBook or Desktop & connected to which Booster and write the plist file accordingly
if [[ "${MACHINE_MODEL}" == "MacBook" && $NEARESTSERVER == 'SRV-DELHI.xaas.com']]
then
defaults write /Library/com.myorg.repo ConnectionNumber -string One
elif [[ "${MACHINE_MODEL}" != "MacBook" && $NEARESTSERVER == 'SRV-DELHI.xaas.com']]
then
defaults write /Library/com.myorg.repo ConnectionNumber -string Two
fi
# Check if the Model is MacBook or Desktop & connected to which Booster and write the plist file accordingly
if [[ "${MACHINE_MODEL}" == "MacBook" && $NEARESTSERVER == 'SRV-MUMBAI.xaas.com']]
then
defaults write /Library/com.myorg.repo ConnectionNumber -string Three
elif [[ "${MACHINE_MODEL}" != "MacBook" && $NEARESTSERVER == 'SRV-MUMBAI.xaas.com']]
then
defaults write /Library/com.myorg.repo ConnectionNumber -string Four
fi
exit 0