Re: I'm an idiot and sed proves it...
Dale Scheetz wrote:
>On Wed, 26 Nov 1997, Aaron Denney wrote:
>> Your problem is that the inner quotes don't add another level quoting, but
>> take away another level of quoting. To be a little clearer:
>>
>> > sed -e 's/'\t'/ /g' <infile >outfile
>> ^^ ^^^^ are the quoted parts.
>>
>> The \t is not quoted, but is interpreted by your shell, which replaces the
> \t
>> with an actual t. If you take out the inner quotes, it should work:
>> sed -e 's/\t/ /g' <infile >outfile
>>
>> This will pass an actual \t to sed, which will interpret it as a tab chara
>cter.
>>
>I think that I will never understand the ins and outs of these quoting
>issues. However, this doesn't provide any better fix for my problem.
>Removing the inner quotes results in sed carefully replacing all t
>characters by the space character, and doing nothing to the tabs. (This
>was, after all, my first try, before I went looking at examples and tried
>the inner quotes. Your assurances didn't make it work any better the
>second or third time I tried it either.)
>
According to `man sed', only a few characters can be backslash-escaped,
and t is not one of them. On the other hand it is used for _output_ by
the l command within sed.
Enclose an actual tab in the quotes; if you are typing it in and the shell interferes, use `ctrl-v tab'.
--
Oliver Elphick Oliver.Elphick@lfix.co.uk
Isle of Wight http://www.lfix.co.uk/oliver
PGP key from public servers; key ID 32B8FAA1
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-user-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: