Date: Mon, 30 Mar 2026 18:09:19 +0000 From: Alexander Ziaee <ziaee@FreeBSD.org> To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org Subject: git: b4d6eb0154 - main - documentation: Bourne shell -> POSIX shell Message-ID: <69cabc4f.4670b.4068d310@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/doc/commit/?id=b4d6eb01540fe9317da88fbf0156b17e972e8324 commit b4d6eb01540fe9317da88fbf0156b17e972e8324 Author: Alexander Ziaee <ziaee@FreeBSD.org> AuthorDate: 2026-03-30 16:11:48 +0000 Commit: Alexander Ziaee <ziaee@FreeBSD.org> CommitDate: 2026-03-30 18:05:00 +0000 documentation: Bourne shell -> POSIX shell The FreeBSD shell is a POSIX compatible shell. It evolved over several decades from the Almquist shell, which was preceeded a decade before that by the Bourne shell. Most readers today have never seen a Bourne shell. If someone wants to learn to use our shell, they need to look for tutorials on the POSIX shell. Align descriptions through out the tree with this reality, consistent with it's manual and common parlance. Reviewed by: mhorne, Artem Bunichev <tembun@bk.ru> Differential Revision: https://reviews.freebsd.org/D56054 --- .../content/en/articles/freebsd-update-server/_index.adoc | 2 +- documentation/content/en/articles/linux-users/_index.adoc | 2 +- documentation/content/en/books/faq/_index.adoc | 8 ++++---- documentation/content/en/books/handbook/basics/_index.adoc | 2 +- documentation/content/en/books/handbook/boot/_index.adoc | 2 +- documentation/content/en/books/handbook/config/_index.adoc | 4 ++-- documentation/content/en/books/handbook/firewalls/_index.adoc | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/documentation/content/en/articles/freebsd-update-server/_index.adoc b/documentation/content/en/articles/freebsd-update-server/_index.adoc index fd7c066605..5c0cc4f7f2 100644 --- a/documentation/content/en/articles/freebsd-update-server/_index.adoc +++ b/documentation/content/en/articles/freebsd-update-server/_index.adoc @@ -89,7 +89,7 @@ At a minimum, updates require building on a FreeBSD release greater than or equa * A user account with at least 4 GB of available space. This will allow the creation of updates for 7.1 and 7.2, but the exact space requirements may change from version to version. * An man:ssh[1] account on a remote machine to upload distributed updates. * A web server, like extref:{handbook}network-servers[Apache, network-apache], with over half of the space required for the build. For instance, test builds for 7.1 and 7.2 consume a total amount of 4 GB, and the webserver space needed to distribute these updates is 2.6 GB. -* Basic knowledge of shell scripting with Bourne shell, man:sh[1]. +* Basic knowledge of shell scripting with POSIX(R) shell, man:sh[1]. [[Configuration]] == Configuration: Installation & Setup diff --git a/documentation/content/en/articles/linux-users/_index.adoc b/documentation/content/en/articles/linux-users/_index.adoc index 343b523c6b..dba46ac5fc 100644 --- a/documentation/content/en/articles/linux-users/_index.adoc +++ b/documentation/content/en/articles/linux-users/_index.adoc @@ -61,7 +61,7 @@ Refer to the extref:{handbook}bsdinstall[Installing FreeBSD, bsdinstall] chapter Linux(R) users are often surprised to find that Bash is not the default shell in FreeBSD. In fact, Bash is not included in the default installation. -Instead, the Bourne shell-compatible man:sh[1] as the default user shell. +Instead, the POSIX(R)-compatible man:sh[1] is the default user shell. The root shell is man:tcsh[1] by default on FreeBSD 13 and earlier and man:sh[1] on FreeBSD 14 and later. man:sh[1] is very similar to Bash but with a much smaller feature-set. Generally shell scripts written for man:sh[1] will run in Bash, but the reverse is not always true. diff --git a/documentation/content/en/books/faq/_index.adoc b/documentation/content/en/books/faq/_index.adoc index a4019a0020..e421019dcb 100644 --- a/documentation/content/en/books/faq/_index.adoc +++ b/documentation/content/en/books/faq/_index.adoc @@ -407,8 +407,8 @@ Explore a variety of intriguing and practical queries about FreeBSD, covering to Many people need to write shell scripts which will be portable across many systems. That is why POSIX(R) specifies the shell and utility commands in great detail. -Most scripts are written in Bourne shell (man:sh[1]), and because several important programming interfaces are specified to use the Bourne shell to interpret commands. -As the Bourne shell is so often and widely used, it is important for it to be quick to start, be deterministic in its behavior, and have a small memory footprint. +Most scripts are written in POSIX shell (man:sh[1]), and several important programming interfaces are specified to use the POSIX shell to interpret commands. +As the POSIX shell is so often and widely used, it is important for it to be quick to start, be deterministic in its behavior, and have a small memory footprint. The existing implementation is our best effort at meeting as many of these requirements simultaneously as we can. To keep `/bin/sh` small, we have not provided many of the convenience features that other shells have. @@ -418,14 +418,14 @@ That is why other more featureful shells like `bash`, `scsh`, man:tcsh[1], and ` [[keyboard-delete-key]] === How do I use my delete key in sh and csh? -For the Bourne Shell, add the following lines to [.filename]#~/.shrc#: +For man:sh[1], add the following lines to [.filename]#~/.shrc#: [.programlisting] .... bind ^[[3~ ed-delete-next-char # for xterm .... -For the C Shell, add the following lines to [.filename]#~/.cshrc#: +For the man:csh[1], add the following lines to [.filename]#~/.cshrc#: [.programlisting] .... diff --git a/documentation/content/en/books/handbook/basics/_index.adoc b/documentation/content/en/books/handbook/basics/_index.adoc index ad0cdb7a9c..4c88eca131 100644 --- a/documentation/content/en/books/handbook/basics/_index.adoc +++ b/documentation/content/en/books/handbook/basics/_index.adoc @@ -1663,7 +1663,7 @@ _Always_ double check the arguments to man:kill[1] _before_ pressing kbd:[Return A _shell_ provides a command line interface for interacting with the operating system. A shell receives commands from the input channel and executes them. Many shells provide built in functions to help with everyday tasks such as file management, file globbing, command line editing, command macros, and environment variables. -FreeBSD comes with several shells, including the Bourne shell (man:sh[1]) and the extended C shell (man:tcsh[1]). +FreeBSD comes with several shells, including an extended POSIX(R) shell (man:sh[1]) and the extended C shell (man:tcsh[1]). Other shells are available from the FreeBSD Ports Collection, such as `zsh` and `bash`. The shell that is used is really a matter of taste. diff --git a/documentation/content/en/books/handbook/boot/_index.adoc b/documentation/content/en/books/handbook/boot/_index.adoc index b8fe0c7e7c..3adda24db7 100644 --- a/documentation/content/en/books/handbook/boot/_index.adoc +++ b/documentation/content/en/books/handbook/boot/_index.adoc @@ -349,7 +349,7 @@ Single-user mode begins with this message: Enter full pathname of shell or RETURN for /bin/sh: .... -If the user presses kbd:[Enter], the system will enter the default Bourne shell. +If the user presses kbd:[Enter], the system will enter the default POSIX(R) shell. To specify a different shell, input the full path to the shell. Single-user mode is usually used to repair a system that will not boot due to an inconsistent file system or an error in a boot configuration file. diff --git a/documentation/content/en/books/handbook/config/_index.adoc b/documentation/content/en/books/handbook/config/_index.adoc index 640c1e0f0e..ba77b932d9 100644 --- a/documentation/content/en/books/handbook/config/_index.adoc +++ b/documentation/content/en/books/handbook/config/_index.adoc @@ -555,7 +555,7 @@ PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin <.> <.> Lines that begin with the `+#+` character are comments. A comment can be placed in the file as a reminder of what and why a desired action is performed. Comments cannot be on the same line as a command or else they will be interpreted as part of the command; they must be on a new line. Blank lines are ignored. -<.> The equals (`=`) character is used to define any environment settings. In this example, it is used to define the `SHELL` and `PATH`. If the `SHELL` is omitted, cron will use the default Bourne shell. If the `PATH` is omitted, the full path must be given to the command or script to run. +<.> The equals (`=`) character is used to define any environment settings. In this example, it is used to define the `SHELL` and `PATH`. If the `SHELL` is omitted, cron will use the default POSIX(R) shell. If the `PATH` is omitted, the full path must be given to the command or script to run. <.> This line defines the seven fields used in a system crontab: `minute`, `hour`, `mday`, `month`, `wday`, `who`, and `command`. The `minute` field is the time in minutes when the specified command will be run, the `hour` is the hour when the specified command will be run, the `mday` is the day of the month, `month` is the month, and `wday` is the day of the week. These fields must be numeric values, representing the twenty-four hour clock, or a `*`, representing all values for that field. The `who` field only exists in the system crontab and specifies which user the command should be run as. The last field is the command to be executed. @@ -586,7 +586,7 @@ PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin .... Then add a line for each command or script to run, specifying the time to run the command. -This example runs the specified custom Bourne shell script every day at two in the afternoon. +This example runs the specified custom shell script every day at two in the afternoon. Since the path to the script is not specified in `PATH`, the full path to the script is given: [.programlisting] diff --git a/documentation/content/en/books/handbook/firewalls/_index.adoc b/documentation/content/en/books/handbook/firewalls/_index.adoc index 0b8f580471..44d7155172 100644 --- a/documentation/content/en/books/handbook/firewalls/_index.adoc +++ b/documentation/content/en/books/handbook/firewalls/_index.adoc @@ -1277,7 +1277,7 @@ net.inet.ip.fw.default_to_accept="1" This sets the default policy of man:ipfw[8] to be more permissive than the default `deny ip from any to any`, making it slightly more difficult to get locked out of the system right after a reboot. ==== -The firewall script begins by indicating that it is a Bourne shell script and flushes any existing rules. +The firewall script begins by indicating that it is a POSIX(R) shell script and flushes any existing rules. It then creates the `cmd` variable so that `ipfw add` does not have to be typed at the beginning of every rule. It also defines the `pif` variable which represents the name of the interface that is attached to the Internet.home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69cabc4f.4670b.4068d310>
