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@xxxxxxxxx> --- 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" + 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 + done +done -- 1.8.3.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx