[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: