Mac OS X Unleashed

Mac OS X Unleashed

By John Ray and William C. Ray

Making Shell Scripts Start at Login or System Startup

Now that you know how to write shell scripts and run them as commands, making them start when you log in to your account, or making them start when the system starts, is straightforward.

You're already familiar with the Login preferences settings, and your ability to customize what programs start when you log in from it. An executable shell script is just another program as far as Unix is concerned, so you can configure scripts to start on login from there. If you're going to be working from the command line with any frequency, you might want to consider adding a single shell script to your login preferences, and using that script to execute other scripts as necessary.

To add a shell script as an item that starts at system startup is also quite simple. Create a subdirectory for the script you want to run in the /System/Library/StartupItems/ folder, and place the script or a link to the script in the directory, giving it the same name as the directory. When the system starts, the script will execute. Remember that it's not going to have a terminal attached, so if it does things such as echo data, the data will have nowhere to appear. In Chapter 20, "Command-Line Configuration and Administration," we'll cover the contents of the plist (properties list) file that you can add to the directory with your script to customize some of its behavior.

Share ThisShare This

Informit Network