I'm trying to redirect the output of a tr command to a file, after piping a sed command to tr. The pipe is:
sed "1a|.\ $0" $script_file | tr '|' '\n' # this works
(About the use of tr: could not find another way to append linebreaks with sed; all the other solutions involve adding '\' and linebreaking in my script, within sed command or in a variable that is used in sed command.)
The output is ok, but when I try to redirect it, it empties my input file.
sed "1a|.\ $0" $script_file | tr '|' '\n' > $script_file # this doesn't work
Any ideas of why this is happening?
Try: to redirect the output of a sed and tr piping to the same file that is read by sed.
Expect: to redirect the output of sed and tr commands without having to create/delete a temporary file (this is the solution I came with, but seems lazy); also, to understand why this is happening.