[pacman-dev] [PATCH] Remove use of `seq` in pactree
Dave Reisner
d at falconindy.com
Thu Oct 7 17:03:04 EDT 2010
On Thu, Oct 07, 2010 at 03:52:34PM -0500, Dan McGee wrote:
> This is not a bash builtin, so can potentially cause portability issues.
> Additionally, the use of it is completely unnecessary as it can all be done
> within bash (and done faster).
>
> $ time pactree xfwm4 >/dev/null (old version)
> real 0m3.245s
>
> $ time ./contrib/pactree xfwm4 >/dev/null (new version)
> real 0m3.042s
>
> Signed-off-by: Dan McGee <dan at archlinux.org>
> ---
> contrib/pactree | 5 ++++-
> 1 files changed, 4 insertions(+), 1 deletions(-)
>
> diff --git a/contrib/pactree b/contrib/pactree
> index 73bece3..cb719f3 100755
> --- a/contrib/pactree
> +++ b/contrib/pactree
> @@ -130,9 +130,12 @@ _tree(){
>
> # Generate the spacer
> spacer=""
> - for each in $(seq 1 $spaces); do
> + local count=0
> + while [[ $count -lt $spaces ]]; do
> spacer="$spacer$separator"
> + count=$((count+1))
> done
> + unset count
> spacer="$spacer$branch_tip"
>
> [ $silent -ne 1 ] && echo -e "$branch_color$spacer$leaf_color$pkg_name$provided"
> --
> 1.7.3.1
>
>
Can I suggest using a C style for loop instead?
for (( count=0; count < spaces; count++ )); do
# stuff...
done
unset count
d
More information about the pacman-dev
mailing list