[Top][All Lists]

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

Re: tab as sort's field-separator

From: jcf
Subject: Re: tab as sort's field-separator
Date: Mon, 17 Jun 2002 00:24:41 -0400
User-agent: Mutt/1.2.5i

Clearly the workaround not working with tcsh is a shell problem.  But
I don't see how not being able to specify a literal for a tab as an
option to sort is a shell problem.  Did you see the two examples of
using tab with sort at the very end of my original message (and below)
after my signature?  The error is independent of the shell used.

$ strings /bin/sort | grep multi
multi-character tab `%s'

Thanks for the pointer to the improved textutils.  I'll need to wait
for them to be in the released baseline since I'll be distributing the
script I'm working on.  Any idea when that will be?


-----Original Message-----
Date: Sun, 16 Jun 2002 09:30:37 -0400
To: Jim Fohlin <address@hidden>, address@hidden
From: Andrew D Jewell <address@hidden>
Subject: Re: tab as sort's field-separator

What you've got here is a shell problem, not a sort problem.

Although I'm sure I've done it in the past, I can't at the moment 
figure out how to make it happen in tcsh.

One option is to grab the improved textutils from
where all field based tools have '--dt' to specify what you want, as 
part of the Alexa standard :

       --dw       shortcut for the inexpressible --delimiter=WHITESPACE
       --dz       shortcut for --delimiter=ZERO
       --ds       shortcut for --delimiter=SPACE
       --dt       shortcut for --delimiter=TAB
       --De       shortcut for inexpressible --output-delimiter=EMPTY
       --Dz       shortcut for --output-delimiter=ZERO
       --Ds       shortcut for --output-delimiter=SPACE
       --Dt       shortcut for --output-delimiter=TAB

I supposed some sort of tcsh command of the form
/bin/bash -c 'that sort command that wors in bash'
might work.


At 2:26 AM -0400 6/15/02, Jim Fohlin wrote:
>It appears that one can't specify just a tab (a tab and only a tab) as
>sort's field-separator.  As shown below, the UNIX example does it
>right whereas the Linux example fails.
>Is this a bug/limitation or did I miss the correct way to do this?
>I can work around this in bash using:
>       TAB=`echo -e "\t"`
>       sort -t"$TAB" ...
>but this trick doesn't work with tcsh using:
>       setenv TAB `/bin/echo -e "\t"`
>Must be the different way expressions are expanded with quotes in the
>two shells.
>$ cat /tmp/x
>2      x, a1
>2      x, b
>1      x, a2
>NB: Each line consists of <digit><tab>x,<space><letter><optionaldigit>
>RH 7.2, textutils-2.0.14-2
>$ sort -t'\t' -u -k2,2 -k1,1 /tmp/x
>sort: multi-character tab `\t'
>Compaq Tru64 UNIX V5.1 (Rev. 732)
>% sort -t'\t' -u -k2,2 -k1,1 /tmp/x
>2       x, a1
>1       x, a2
>2       x, b
>Bug-textutils mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]