[Intel-gfx] [PATCH maintainer-tools] frob-patch-rank: A little script to batch renaming patch files

Jani Nikula jani.nikula at linux.intel.com
Tue Jun 10 13:57:20 CEST 2014


On Tue, 10 Jun 2014, Damien Lespiau <damien.lespiau at intel.com> wrote:
> The "usage" text should explain it all. I found, in my quilt series
> handling endeavours, that I wanted to be able to shift the prefix
> numbers of a patch series.
>
> Signed-off-by: Damien Lespiau <damien.lespiau at intel.com>
> ---
>  frob-patch-rank | 47 +++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 47 insertions(+)
>  create mode 100755 frob-patch-rank
>
> diff --git a/frob-patch-rank b/frob-patch-rank
> new file mode 100755
> index 0000000..4be42e5
> --- /dev/null
> +++ b/frob-patch-rank
> @@ -0,0 +1,47 @@
> +#!/bin/sh
> +set -e
> +
> +script=$(basename $0)
> +[ $# -ge 3 ] || {
> +	echo "Usage: $script start end expr"
> +	echo
> +	echo "  Frob patches."
> +	echo
> +	echo "  This tiny script renames \"git format-patch\" patches by executing 'expr'"
> +	echo "  on the number that prefix the patch file, but only if the patch file name "
> +	echo "  starts with a number in ['start','end']."
> +	echo
> +	echo "Examples:"
> +	echo "  $ ls *patch"
> +	echo "  0008-Super-patch.patch"
> +	echo "  0009-Mega-patch.patch"
> +	echo "  $ $script 8 9 -7"
> +	echo "  $ ls *patch"
> +	echo "  0001-Super-patch.patch"
> +	echo "  0002-Mega-patch.patch"
> +	echo
> +	echo "Examples:"
> +	echo "  $ ls *patch"
> +	echo "  0117-Super-patch.patch"
> +	echo "  0118-Mega-patch.patch"
> +	echo "  $ $script 8 9 +900 -17"

I was scratching my head for a while with this example. It's wrong isn't
it?

The help could benefit from a "here" document.

> +	echo "  $ ls *patch"
> +	echo "  1000-Super-patch.patch"
> +	echo "  1001-Mega-patch.patch"
> +	exit 1
> +}
> +
> +start=$1
> +end=$2
> +shift 2
> +op=$*
> +
> +for i in $(seq $start $end); do
> +	prefix=$(printf "%04d" $i)
> +	for f in $(ls $prefix-*.patch); do
> +		base=${f#$prefix-}
> +		((n=$i $op))
> +		new_prefix=$(printf "%04d" $n)
> +		mv $prefix-$base $new_prefix-$base

mv -i just in case?

BR,
Jani.

> +	done
> +done
> -- 
> 1.8.3.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Jani Nikula, Intel Open Source Technology Center



More information about the Intel-gfx mailing list