Re: Format Output of bash into columns

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

 





Mike Vanecek wrote:
On Fri, 26 Nov 2004 19:27:09 -0500, Anthony E. Greene wrote

On 26-Nov-2004/17:37 -0600, Mike Vanecek <rh_list@xxxxxxxxxxxxx> wrote:

I have looked through my books and googled ... Tried serveral things

without

success ...

I would like to run the output of a bash command that produces 1 field per
line output through sort and then output in 3 columns. I have looked at
printf, fmt, column, and so on.

For example,

rpm -qa | sort 2>&1 | column -c 2

rpm -qa | sort |  column -c 2

Or say I have a file with a list of sorted names, for example,
[admin@www admin]$ rpm -qa | sort -o rpm.txt

Then I want to output the file with

column -c 2 rpm.txt


#!/usr/bin/perl # # Format STDIN into three tab-delimited columns # $colnum = 1; while ($line = <STDIN>) { chomp $line; if ($colnum < 3) { print "$line "; # The whitespace is a tab character. } else { print "$line\n"; } }

You could get fancy using perl's formatting features, but this quick$
dirty should work for lines that are all of similar length, or for input
in an application that easily parses tab-delimited data.



Thank you for the script. Another solution that I stumbled upon is to use pr, e.g.,

rpm -qa | sort | pr --columns 3 -at  type of thing.

It truncates the columns a bit, but ...


To prevent truncation when using 'pr' you could use its option '-J' (columns will not be truncated, but there will be problems with alingment of columns) or explicitly specify the width of resulting output using '-W<number of chars>' (by default 'pr' output is 72 characters wide).


For example:
rpm -qa | sort | pr --columns 3 -aT -J
or
rpm -qa | sort | pr --columns 3 -aT -W132

Alexey Fadyushin
Brainbench MVP for Linux
http://www.brainbench.com



--
redhat-list mailing list
unsubscribe mailto:redhat-list-request@xxxxxxxxxx?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list

[Index of Archives]     [CentOS]     [Kernel Development]     [PAM]     [Fedora Users]     [Red Hat Development]     [Big List of Linux Books]     [Linux Admin]     [Gimp]     [Asterisk PBX]     [Yosemite News]     [Red Hat Crash Utility]


  Powered by Linux