47 lines
1.7 KiB
Bash
47 lines
1.7 KiB
Bash
#!/bin/bash
|
|
|
|
if [ -f /opt/spt-server/SPT.Server ]; then
|
|
appHash=$(md5sum /app/spt-server/SPT.Server | awk '{ print $1 }')
|
|
exeHash=$(md5sum /opt/spt-server/SPT.Server | awk '{ print $1 }')
|
|
if [ "$appHash" = "$exeHash" ]; then
|
|
echo "MD5 verification successful!"
|
|
else
|
|
echo "MD5 mismatch, copy files to /opt/spt-server."
|
|
cp -r /app/spt-server /opt
|
|
echo "Finished!"
|
|
fi
|
|
else
|
|
echo "Program is not found, copy files to /opt/spt-server."
|
|
cp -r /app/spt-server /opt
|
|
echo "Finished!"
|
|
fi
|
|
|
|
cd /opt/spt-server
|
|
|
|
if [ -z "$backendIp" ]; then
|
|
IP=$(hostname -I | awk '{print $1}')
|
|
else
|
|
IP=$backendIp
|
|
fi
|
|
|
|
if [ -z "$backendPort" ]; then
|
|
PORT=6969
|
|
else
|
|
PORT=$backendPort
|
|
fi
|
|
|
|
if [ -z "$webSocketPingDelayMs" ]; then
|
|
PINGDELAYMS=90000
|
|
else
|
|
PINGDELAYMS=$webSocketPingDelayMs
|
|
fi
|
|
|
|
sed -Ei 's/"ip": "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",/"ip": "0.0.0.0",/g' SPT_Data/Server/configs/http.json
|
|
sed -Ei 's/"port": ([0-9]|[1-9][1-9]{1,3}|[1-5][0-9]{4}|6[1-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]),/"port": ${PORT},/g' SPT_Data/Server/configs/http.json
|
|
sed -Ei 's/"backendIp": "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",/"backendIp": "${IP}",/g' SPT_Data/Server/configs/http.json
|
|
sed -Ei 's/"backendPort": ([0-9]|[1-9][1-9]{1,3}|[1-5][0-9]{4}|6[1-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]),/"backendPort": ${PORT},/g' SPT_Data/Server/configs/http.json
|
|
sed -Ei 's/"webSocketPingDelayMs": ([0-9]{1,}),/"webSocketPingDelayMs": ${PINGDELAYMS},/g' SPT_Data/Server/configs/http.json
|
|
|
|
chmod +x SPT.Server && ./SPT.Server
|
|
|