Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 Apr 2011 18:22:11 +0100
From:      Chris Rees <utisoft@gmail.com>
To:        Mike Jeays <mike.jeays@rogers.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: graphical representation of `du`
Message-ID:  <BANLkTin06Pq%2BPw=H=BeV7xtCiJi8iPsySw@mail.gmail.com>
In-Reply-To: <20110402130739.4253ea30@napoleon>
References:  <0DD2BF5C-7387-4AFA-BF43-B1683F3773E8@d3photography.com> <BANLkTi=trnnEEW6ELSV5JRnW5erm490sTA@mail.gmail.com> <20110402130739.4253ea30@napoleon>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2 April 2011 18:07, Mike Jeays <mike.jeays@rogers.com> wrote:
> On Sat, 2 Apr 2011 17:15:04 +0100
> Chris Rees <utisoft@gmail.com> wrote:
>
>> du -h . | awk '{a[i++]=$0} END {for (j=i-1; j>=0;) print a[j--] }' |
>> awk '{print($2" ["$1"]");}' | sed -e 's,[^-][^/]*/,--,g' -e 's,^,|,'
>
>
> I confess to being impressed...
>

Yeah, but perhaps I should have used sed instead of the second awk;
fewer processes:

du -h | awk '{a[i++]=$0} END {for (j=i-1; j>=0;) print a[j--] }' | sed
-e 's,^[^1-9]*\([^___CTRL-V+TAB______]*\)____CTRL-V+TAB_____*\(.*\)$,\2
\[\1\],;s,[^-][^/]*/,--,g;s,^,|,'

That does exactly the same --  where I've put ____CTRL-V+TAB______ you
have to type Ctrl-V, then a literal [::tab::] key; BSD sed doesn't do
\t.

Chris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BANLkTin06Pq%2BPw=H=BeV7xtCiJi8iPsySw>