Execute macOS scripts as Console User
Description
By default, the FileWave Client executes scripts and tasks with elevated permissions (root on macOS). This addition to the start of a script will execute it as the currently logged-in user (also known as the console user).
Ingredients
- Text editor
- FileWave Central
Directions
- Insert this near the start of your script, before the desired actions.
Example:#!/bin/zsh current_user=$(stat -f%Su /dev/console) current_user_id=$(id -u $current_user)
#!/bin/zsh current_user=$(stat -f%Su /dev/console) current_user_id=$(id -u $current_user) launchctl asuser $current_user_id sudo -u $current_user whoami echo "hello world" >> /Users/$current_user/Desktop/test.txt