Sometimes you may be required to write or append multiple lines to a file. You can use multiple methods to write multiple lines to a file through the command line in the Linux system. Here are the three methods described below.
Method 1:-
You can write/append content line by line using the multiple echo commands. This the simple and straight forward solution to do this. We recommend going with Method 2 or Method 3.
echo " line 1 content " >> myfile.txtecho " line 2 content " >> myfile.txtecho " line 3 content " >> myfile.txt
Method 2:-
You can append content with the multi-line command in the quoted text. In this way can write multiple lines to fine with single echo command. But the third method is our suggested method to do this.
echo " line 1 content line 2 content line 3 content " >> myfile.txt
Method 3:-
This is the third and suggested option to use here documents (<<) to write a block of multiple lines text in a single command. The above methods are also useful but personally, I also use this while working.
cat >> greetings.txt <<EOL line 1 content line 2 content line 3 content EOL
Method 3 is working for me, Thanks a lot
Hello , i want to append multiple lines to sshd_config.
like below :
Match Address
PermitRootLogin without-password
It should exactly in above format ..Could you please me using sed command
i apand to this :- echo -n GENERICS_DOMAIN_FILE(`/etc/mail/sendmail.gdf’) jayesh.txt
below error please any solution
-bash: syntax error near unexpected token `(‘
Hi Jayesh, Use the command as following:
Using the -n will not add the trailing newline.
I want to add a word in a specific line in the file. How can I do that? Do I need to mention the line number? Thanks in advance.
You can use the sed command to do this: Below example will append a string to line 4 in file.txt.
sed -i ‘4s/$/ morestring/’ file.txt
Option 3 did the job!!! Thanks!
very helpful, thx!