Chapter 4. Interacting with the Environment
No shell script is an island. Your scripts run within the environment provided by your computer and operating system. For shell scripts, most systems provide a Unix-like environment, which helps a lot because your scripts can query the environment in a consistent manner across systems. This includes Mac OS X, based on Berkeley Unix, and Linux, a Unix work-alike. Even Windows and QNX provide Unix-like environments for shell scripts.
A Unix-like environment provides special settings called environment variables, which hold important values for determining where commands are located, as well as the user's home directory.
This chapter covers:
Examining the settings in your system's environment, getting and setting environment variables
Customizing your account, especially how shells start up
Handling command-line arguments and using these arguments to change the way your scripts behave
Making scripts executable so your scripts appear to the end user as operating system commands, no different from commands such as
ls
andcp
Examining Environment Variables
Environment variables are a type of shell variables.
For the most part, environment variables are the same as other shell variables. There are four main differences, however:
Environment variables are set by the environment, the operating system, during the startup of your shell. (This process is not magic, as you will see in this chapter.)
Shell variables are local to a particular instance of the shell—for ...
Get Beginning Shell Scripting now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.