diff options
Diffstat (limited to 'scripts/checkbashisms.1')
-rw-r--r-- | scripts/checkbashisms.1 | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/scripts/checkbashisms.1 b/scripts/checkbashisms.1 new file mode 100644 index 0000000..8f706ab --- /dev/null +++ b/scripts/checkbashisms.1 @@ -0,0 +1,77 @@ +.TH CHECKBASHISMS 1 "Debian Utilities" "DEBIAN" \" -*- nroff -*- +.SH NAME +checkbashisms \- check for bashisms in /bin/sh scripts +.SH SYNOPSIS +\fBcheckbashisms\fR \fIscript\fR ... +.br +\fBcheckbashisms \-\-help\fR|\fB\-\-version\fR +.SH DESCRIPTION +\fBcheckbashisms\fR, based on one of the checks from the \fBlintian\fR +system, performs basic checks on \fI/bin/sh\fR shell scripts for the +possible presence of bashisms. It takes the names of the shell +scripts on the command line, and outputs warnings if possible bashisms +are detected. +.PP +Note that the definition of a bashism in this context roughly equates +to "a shell feature that is not required to be supported by POSIX"; this +means that some issues flagged may be permitted under optional sections +of POSIX, such as XSI or User Portability. +.PP +In cases where POSIX and Debian Policy disagree, \fBcheckbashisms\fR by +default allows extensions permitted by Policy but may also provide +options for stricter checking. +.SH OPTIONS +.TP +.BR \-\-help ", " \-h +Show a summary of options. +.TP +.BR \-\-newline ", " \-n +Check for "\fBecho \-n\fR" usage (non POSIX but required by Debian Policy 10.4.) +.TP +.BR \-\-posix ", " \-p +Check for issues which are non POSIX but required to be supported by Debian +Policy 10.4 (implies \fB\-n\fR). +.TP +.BR \-\-force ", " \-f +Force each script to be checked, even if it would normally not be (for +instance, it has a bash or non POSIX shell shebang or appears to be a +shell wrapper). +.TP +.BR \-\-lint ", " \-l +Act like a linter, for integration into a text editor. Possible +bashisms will be printed in stdout, like so: +.IP +.I {filename}:{lineno}:1: warning: possible bashism; {explanation} +.TP +.BR \-\-extra ", " \-x +Highlight lines which, whilst they do not contain bashisms, may be +useful in determining whether a particular issue is a false positive +which may be ignored. +For example, the use of "\fB$BASH_ENV\fR" may be preceded by checking +whether "\fB$BASH\fR" is set. +.TP +.BR \-\-early-fail ", " \-e +Exit right after a first error is seen. +.TP +.BR \-\-version ", " \-v +Show version and copyright information. +.SH "EXIT VALUES" +The exit value will be 0 if no possible bashisms or other problems +were detected. Otherwise it will be the sum of the following error +values: +.TP +1 +A possible bashism was detected. +.TP +2 +A file was skipped for some reason, for example, because it was +unreadable or not found. The warning message will give details. +.TP +4 +No bashisms were detected in a bash script. +.SH "SEE ALSO" +.BR lintian (1) +.SH AUTHOR +\fBcheckbashisms\fR was originally written as a shell script by Yann Dirson +<\fIdirson@debian.org\fR> and rewritten in Perl with many more features by +Julian Gilbey <\fIjdg@debian.org\fR>. |