What is the vertical bar ( | )?
The vertical bar ( | ) -- also called the vertical line, vertical slash, pipe, pipe symbol or upright slash -- is a symbol used in mathematics, computing and other areas to represent a specific type of logic or operation, depending on its context. Even within a single area such as computing, the vertical bar is applied in multiple ways. Once again, its use depends on the context.
As with computing, mathematics uses the vertical bar in a variety of ways. For example, it can indicate the absolute value of a number, as in |-5| = 5. This means that the absolute value of -5 is 5. The vertical bar can also express divisibility. A simple example of this is a|b, which translates to "a divides b" or "b is divisible by a." The vertical bar is also used for mathematical norms, conditional probability, set-builder notation, function parameter separation and other areas of mathematics.
The vertical bar is used in other ways as well. For example, vertical bars, along with angle brackets, are key elements in Bra-ket notation, a standard notation found in quantum mechanics to describe quantum states. Vertical bars also appear in printed and online material in the form of punctuation or typographical marks. For example, a person might see them on a business card or at the bottom of a webpage to separate text elements such as phone numbers and addresses.
The vertical bar in computing
The vertical bar is used extensively in computing. It is represented in different ways, depending on the character encoding standard being applied. The following table lists common examples of how the vertical bar is represented in different character sets.
Shell scripts use the vertical bar to build pipelines that pass the results of one command to the next command. The vertical bar connects the commands together, making it possible to create a chain of related but separate processes. This approach is used extensively in Unix and Linux systems to build multiprocess pipelines in shell programs such as sh, csh, tcsh, ksh and bash. Microsoft PowerShell uses the same concept for scripting in Windows.
Each command in the pipeline after the first one filters or transforms the data being passed down from the preceding command. The current command then passes the refined data down the pipeline to the next command. For example, macOS computers, like Unix and Linux, can run the bash shell, which supports pipeline constructions such as the following.
ls /etc/ | grep ".*\.conf$" | wc -l
The pipeline includes three commands that are separated by vertical bars. Together, the commands return the number of .conf files in the etc directory. The first command in the pipeline is an ls command that retrieves a list of files from the etc directory. This list is then pipelined to the second command, grep, which limits the files to those with the .conf extension. The filtered results are then piped to the wc command, which returns a count of the number of files in the pipeline.
The vertical bar is also used in programming languages as a logical or bitwise operator that represents OR logic. The vertical bar makes it possible to specify alternative values within an expression. For this reason, it is sometimes referred to as an alternation operator. Some programming languages use double vertical bars ( || ) as an OR operator, rather than using a single bar. The vertical bar is also used in regular expressions to specify alternative characters. For example, a regular expression that contains s(a|i|u)ng will match the words sang, sing and sung.
The vertical bar is sometimes used as a delimiter in text files. Although commas and tabs are far more common, the use of vertical bars does occur on occasion. In addition, the vertical bar appears in Backus-Naur form notation, a standard format for describing the syntax of a programming language. In this case, the vertical bar is used to separate alternative options, much like an OR operator.
To type the vertical bar on most keyboards, press Shift + \.
See also: Mathematical symbols