fn_check_logs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #!/bin/bash
  2. # LGSM fn_check_logs function
  3. # Author: Daniel Gibbs
  4. # Website: http://gameservermanagers.com
  5. # Version: 160515
  6. # Description: Checks that log files exist on server start
  7. # Create dir's for the script and console logs
  8. if [ ! -f "${scriptlog}" ]; then
  9. fn_printdots "Checking for log files"
  10. sleep 1
  11. fn_printinfo "Checking for log files: Creating log files"
  12. sleep 1
  13. echo -en "\n"
  14. mkdir -v "${rootdir}/log"
  15. mkdir -v "${scriptlogdir}"
  16. touch "${scriptlog}"
  17. mkdir -v "${consolelogdir}"
  18. touch "${consolelog}"
  19. # If a server is Project Zomboid create a symbolic link to the game server logs
  20. if [ "${engine}" == "projectzomboid" ]; then
  21. ln -nfsv "${gamelogdir}" "${rootdir}/log/server"
  22. fi
  23. # If a server is source or goldsource create a symbolic link to the game server logs
  24. if [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]; then
  25. if [ ! -h "${rootdir}/log/server" ]; then
  26. ln -nfsv "${gamelogdir}" "${rootdir}/log/server"
  27. else
  28. echo "Symbolic link ${gamelogdir} => ${rootdir}/log/server already exists!"
  29. fi
  30. fi
  31. # If a server is unreal2 or unity3d create a dir
  32. if [ "${engine}" == "unreal2" ]||[ "${engine}" == "unity3d" ]; then
  33. mkdir -pv "${gamelogdir}"
  34. fi
  35. # If a server is 7 Days to Die
  36. if [ "${gamename}" == "7 Days To Die" ]; then
  37. if [ ! -h "${gamelogdir}/output_log.txt" ]; then
  38. ln -nfsv "${filesdir}/7DaysToDie_Data/output_log.txt" "${gamelogdir}/output_log.txt"
  39. fi
  40. fi
  41. # If a server is starbound create a symbolic link to the game server logs
  42. if [ "${engine}" == "starbound" ]; then
  43. if [ ! -h "${rootdir}/log/server" ]; then
  44. ln -nfsv "${gamelogdir}" "${rootdir}/log/server"
  45. else
  46. echo "Symbolic link ${gamelogdir} => ${rootdir}/log/server already exists!"
  47. fi
  48. fi
  49. # If server uses SteamCMD create a symbolic link to the Steam logs
  50. if [ -d "${rootdir}/Steam/logs" ]; then
  51. if [ ! -h "${rootdir}/log/steamcmd" ]; then
  52. ln -nfsv "${rootdir}/Steam/logs" "${rootdir}/log/steamcmd"
  53. else
  54. echo "Symbolic link ${rootdir}/Steam/logs => ${rootdir}/log/steamcmd already exists!"
  55. fi
  56. fi
  57. # If server is Teamspeak 3
  58. if [ "${engine}" == "Teamspeak 3" ]; then
  59. if [ ! -d "${scriptlogdir}" ];then
  60. mkdir "${rootdir}/log"
  61. mkdir "${scriptlogdir}"
  62. fi
  63. if [ ! -h "${rootdir}/log/server" ]; then
  64. ln -sv "${gamelogdir}" "${rootdir}/log/server"
  65. fi
  66. fi
  67. sleep 1
  68. fi