With regards to piping commands, what are the greater than (>) and less than (<) symbols called?
I usually refer to all four variations (<
<<
>
>>
) as a "redirect" when speaking to folks that I know will understand.
>
is used to redirect output.
$echo "hello" > file.txt
<
is used to redirect input.
$ cat < file.txt
Output:
hello
>>
is used to append output to the end of the file.
$ echo "world!" >> file.txt
Output:
hello
world!
<<
(called here document) is a file literal or input stream literal.
$cat << EOF >> file.txt
Output:
>
Here you can type whatever you want and it can be multiline. It ends when you type EOF (We used EOF in our example but you can use something else instead).
> linux
> is
> EOF
Output:
hello
world!
linux
is
<<<
(called here string) is the same as <<
but takes only one word.
$cat <<< great! >> file.txt
Output:
hello
world!
linux
is
great!
Note that we could have used $cat <<< great! | tee file.txt
instead of $cat <<< great! >> file.txt
.
They're symbols for redirection of input/output.
Quick runthrough on the differences between the redirection syntax commands