How to exchange two columns in a table?

coscell at mail.batol.net coscell at mail.batol.net
Sun Jan 7 05:18:36 UTC 2007


Many thanks! I got the following messages:

./swap.pl: line 3: syntax error near unexpected token `)'
./swap.pl: line 3: `while(<STDIN>)'

Perl version is 5.8.8.
On Sat, 6 Jan 2007, Rudy Vener wrote:

> If there is only one tab between fields you can use PERL like so:
>
> $ cat file | swap.pl > file2
>
>
>
> Where swap.pl contains:
>
> #/usr/bin/perl
>
> while(<STDIN>)
> {
> chomp $_;
> ($col1,$col2) = split(/\t/,$_);
> print "$col2\t$col1\n";
> }
> # end of swap.pl file
>
>
> The above assumes  that swap.pl is executable. chmod 755 it  after editing. It also
> assumes there are only two columns in the file. If there are more, e.g. 4 you will
> ned to adjust the code accordingly, such as
> ($col1,$col2,$col3,$col4) = split(/\t/,$_);
> and
> print "$col2\t$col1\t$col3\t$col4\n";
>
> or whichever columns you want to swap.
>
> Rudy Vener
> Pizza galaxy
> http://www.pizzagalaxy.com
>
>
>
> On Sat, Jan 06, 2007 at 11:14:40PM +0800, coscell at mail.batol.net wrote:
>> Thank you! It's just a tab-delimited text file.
>>
>> On Sat, 6 Jan 2007, Tim Chase wrote:
>>
>>> I think you'll have to provide a few more details:
>>>
>>> 1) where is the table?  In a spreadsheet?  In a database?  In a text-file?
>>>
>>> 2) If it's a spreadsheet or database, what flavor? (Gnumeric? Siag?  SC?
>>> Oleo?  OpenOffice.org?  KOffice?  MySQL?  PostgreSQL?
>>> SQLite? etc)
>>>
>>> 3) If it's just a text file, how are columns determined?  Is it a CSV
>>> file? (and if so, how is character escaping/quoting done?) Is it a
>>> tab-delimited file?  Are the columns positional? (i.e. columns 1 through
>>> 10 are the first field, 11 through 15 are the next, etc)
>>>
>>> With the extra details, it should be pretty easy to find a solution.
>>>
>>> -tim
>>>
>>>
>>>
>>> _______________________________________________
>>> Blinux-list mailing list
>>> Blinux-list at redhat.com
>>> https://www.redhat.com/mailman/listinfo/blinux-list
>>>
>>
>> _______________________________________________
>> Blinux-list mailing list
>> Blinux-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/blinux-list
>
> _______________________________________________
> Blinux-list mailing list
> Blinux-list at redhat.com
> https://www.redhat.com/mailman/listinfo/blinux-list
>




More information about the Blinux-list mailing list