| Advanced Bash-Scripting HOWTO: A guide to shell scripting, using Bash | ||
|---|---|---|
| Prev | Chapter 3. Tutorial / Reference | Next |
Options are settings that change shell and/or script behavior.
The set command (see Section 3.9) enables options within a script. At the point in the script where you want the options to take effect, use set -o option-name or, in short form, set -option-abbrev. These two forms are equivalent.
#!/bin/bash
set -o verbose
# Echoes all commands before executing.
|
#!/bin/bash
set -v
# Exact same effect as above.
|
Note: To disable an option within a script, use set +o option-name or set +option-abbrev.
#!/bin/bash
set -o verbose
# Command echoing on.
command
...
command
set +o verbose
# Command echoing off.
command
# Not echoed.
set -v
# Command echoing on.
command
...
command
set +v
# Command echoing off.
command
exit 0
|
An alternate method of enabling script options is to invoke the script with the option(s) from the command line. Some options are available only this way. Among these are -i, force script to run interactive, and -r, restricted.
bash -v script-name
or
bash -o verbose script-name
|
The following is a listing of some useful options. They may be specified in either abbreviated form or by complete name.
Table 3-1. bash options
| Abbreviation | Name | Effect |
|---|---|---|
| -C | noclobber | Prevent overwriting of files by redirection (may be overridden by >|) |
| -a | allexport | Export all defined variables |
| -b | notify | Notify when jobs running in background terminate (not of much use in a script) |
| -f | noglob | Filename expansion disabled |
| -p | privileged | Script runs as "suid" (caution!) |
| -u | nounset | Attempt to use undefined variable outputs error message |
| -v | verbose | Print each command to stdout before executing it |
| -x | xtrace | Similar to -v, but expands commands |
| -e | errexit | Abort script at first error (when a command exits with non-zero status) |
| -n | noexec | Read commands in script, but do not execute them |
| -t | (none) | Exit after first command |
| - | (none) | End of options flag. All other arguments are positional parameters. |
| -- | (none) | Unset positional parameters. If arguments given (--arg1arg2), positional parameters set to arguments. |
|
Закладки на сайте Проследить за страницей |
Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |