I am using the following code to remove both leading and tailing spaces from all lines of a file A.txt
sed 's/^[ \t]*//;s/[ \t]*$//' ./A.txt > ./B.txt
The problem occurs on the lines where there is a t in the beginning or at the end. So say for example, the original line that starts with the string "timezone" becomes "imezone"
Can you please tell me what is happening here? and also if there is a known solution to the problem.
Thanks in advance.
Best Answer
Some older versions of sed don't understand C-style escape characters such as \t and treat that as two characters, '\' and 't'. You can avoid the problem by using a literal tab character -- if you're typing this directly into the shell, type
Ctrl+V Tab
.