I am trying to write a script which will use echo and write/append to a file. But I have " " in syntax already in strings .. say ..
echo "I am "Finding" difficult to write this to file" > file.txt
echo "I can "write" without double quotes" >> file.txt
Can anyone please help to understand this, really appreciated.
BR, SM
If you want to have quotes, then you must escape them using the backslash character.
The same holds true if you i.e. also want to write the
\
itself, as it may cause side effects. So you have to use\\
Another option would be to use The `'' instead of quotes.
However in this case variable substition doesn't work, so if you want to use variables you have to put them outside.
If you have special characters, you can escape them with a backslash to use them as needed:
However, you can also use the shell's "EOF" feature with the
tee
command, which is really nice for writing all sorts of things:That will write virtually ANY content you want directly to that file, and escape any special characters until you get to the
EOF
.*Edited to add the append switch, to prevent overwriting the file:
-a