This quick guide will discuss various approaches you can use to append multiple lines in a file.
Method # 1 – Using echo & Printf
The simplest way to append multiple lines to a file is to use the echo and printf command.
Let us start with echo.
Echo is a command used to output a string or multiple strings as arguments. Echo is available in all Linux distributions, making it a good tool for redirecting output to a file.
Let us start by verifying the file is not empty.
As shown in the output above, the file is not empty; it contains lines of text.
To add multiple lines to a file with echo, use the -e option and separate each line with \n.
When you use the -e option, it tells echo to evaluate backslash characters such as \n for new line.
If you cat the file, you will realize that each entry is added on a new line immediately after the existing content.
The printf
Let us now look at printf. Using the printf command is very similar to the echo command. To append multiple lines with printf command:
Similarly, cating the command provides a similar output as:
Method # 2 – Using Bash Heredoc
Another method we can use to append multiple lines to a file in bash is to use the heredoc.
A heredoc is a redirection feature that allows you to pass multiple lines to a command or a file.
Using a heredoc involves specifying a delimiter at the beginning of your command. Once the shell encounters the delimiter, it terminates the input and redirects it to a file or a specific command.
Learn the basics of using a heredoc.
We can use the tee or cat command to redirect multiple lines to a file using a heredoc. Let’s discuss both
The Tee command
To append a line using the tee command, we use the -a option. We can then pass the input from a heredoc as:
Copy standard input toeach FILE, and also to standard output.
-a, --append
appendtothe given FILEs, donot overwrite
-i, --ignore-interrupts
ignore interrupt signals
-p diagnose errors writing tonon pipes
--output-error[=MODE]
set behavior onwriteerror. SeeMODEbelow
--help display this help and exit
--version
output version information and exit
EOF
Once you execute the command, a tee will display the contents and append them to the specified file.
You can verify the content is appended to the file using cat.
The cat command
Using the cat command to append to a file is similar to using the tee command. However, we use the append redirection symbols to redirect the output.
The following command appends the following lines to the file.
------------------------------------------------------------
CAT APPENDS FILES ARE LOCATED HERE
------------------------------------------------------------
EOF
Verify the contents exists in the file using the cat command:
To Conclude
This guide discussed various methods you can use to append multiple lines to a file in bash.
from Linux Hint https://ift.tt/3zjxD57
0 Comments