macosx-script-boot-shutdown
macosx-script-boot-shutdown copied to clipboard
An automation setup example
Just sharing example script to automate shutdown setup without original files modification (working with copies), might be appended to readme and be helpful
#!/bin/bash
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
EXECUTABLE_COMMAND="killall Simulator"
#setup paths
REPO_DIR_NAME="macosx-script-boot-shutdown"
REPO_PLIST_NAME="boot-shutdown-script.plist"
REPO_SCRIPT_NAME="boot-shutdown.sh"
REPO_WORKING_DIRECTORY="$SCRIPT_DIR/$REPO_DIR_NAME"
REPO_LOG_PATH=$SCRIPT_DIR
REPO_CUSTOM_PLIST_PATH="$SCRIPT_DIR/$REPO_PLIST_NAME"
REPO_CUSTOM_SCRIPT_PATH="$SCRIPT_DIR/$REPO_SCRIPT_NAME"
#create plist & script copy
cp "$REPO_WORKING_DIRECTORY/$REPO_PLIST_NAME" $REPO_CUSTOM_PLIST_PATH
cp "$REPO_WORKING_DIRECTORY/$REPO_SCRIPT_NAME" $REPO_CUSTOM_SCRIPT_PATH
#replace vars in custom plist
sed -i '' "s#SCRIPT_PATH#$REPO_WORKING_DIRECTORY#g" "$REPO_CUSTOM_PLIST_PATH"
sed -i '' "s#LOG_PATH#$REPO_LOG_PATH#g" "$REPO_CUSTOM_PLIST_PATH"
sed -i '' "s#.*AT SHUTDOWN.*#$EXECUTABLE_COMMAND#g" "$REPO_CUSTOM_SCRIPT_PATH"
#setup launch daemon
sudo cp $REPO_PLIST_NAME /Library/LaunchDaemons/
sudo launchctl load -w "/Library/LaunchDaemons/$REPO_PLIST_NAME"
Hi @schmidt9, thanks for sharing this.