navicat14.sh 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #!/bin/bash
  2. [ "$(sudo whoami)" == "root" ] || exit 1
  3. targetService="com.navicat.14days.plist"
  4. targetFile="navicat14.sh"
  5. cat <<EOF> "/tmp/$targetService"
  6. <?xml version="1.0" encoding="UTF-8"?>
  7. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  8. <plist version="1.0">
  9. <dict>
  10. <key>EnvironmentVariables</key>
  11. <dict>
  12. <key>PATH</key>
  13. <string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:</string>
  14. </dict>
  15. <key>Label</key>
  16. <string>com.navicat.14days</string>
  17. <key>ProgramArguments</key>
  18. <array>
  19. <string>bash</string>
  20. <string>/usr/local/$targetFile</string>
  21. </array>
  22. <key>RunAtLoad</key>
  23. <true/>
  24. <key>KeepAlive</key>
  25. <false/>
  26. <key>LaunchOnlyOnce</key>
  27. <true/>
  28. </dict>
  29. </plist>
  30. EOF
  31. cat <<EOF>"/tmp/$targetFile"
  32. #!/bin/bash
  33. Plist="\${1:-com.navicat.NavicatPremium.plist}"
  34. defaults write "\$Plist" SUSendProfileInfo -int 0;
  35. defaults write "\$Plist" SUHasLaunchedBefore -int 0;
  36. defaults write "\$Plist" SUEnableAutomaticChecks -int 0;
  37. defaults write "\$Plist" didNAV16WelcomePageShow -int 1;
  38. defaults delete "\$Plist" tableViewPreference >/dev/null 2>&1 ;
  39. defaults read "\$Plist" |grep '{' |grep -o '[0-9A-Z]\{32\}' |xargs -I {} defaults delete "\$Plist" "{}"
  40. for user in \`find /Users -type d -maxdepth 1\`; do NavicatPath="\$user/Library/Application Support/PremiumSoft CyberTech/Navicat CC/Navicat Premium"; [ -d "\$NavicatPath" ] || continue; find "\$NavicatPath" -type f -name ".*" -delete; done
  41. date >"/tmp/navicat_14days.txt" 2>/dev/null
  42. # sudo launchctl load -w /Library/LaunchDaemons/$targetService
  43. # sudo launchctl unload -w /Library/LaunchDaemons/$targetService
  44. # sudo rm -rf /Library/LaunchDaemons/$targetService /usr/local/$targetFile
  45. EOF
  46. sudo cp -rf "/tmp/$targetFile" "/usr/local/$targetFile"
  47. sudo cp -rf "/tmp/$targetService" "/Library/LaunchDaemons/$targetService"
  48. sudo launchctl load -w "/Library/LaunchDaemons/$targetService"
  49. exit 0