about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2022-02-06 17:34:26 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2022-02-06 17:34:26 +0000
commitdda1dec24be3a94965325201d66e5ad412bdbf1e (patch)
tree9213278c41d5351364afe771217193a19861d27b
parentbe71d9f416a205d4dd977b93f5f96f97e8628cca (diff)
downloadnetpbm-mirror-dda1dec24be3a94965325201d66e5ad412bdbf1e.tar.gz
netpbm-mirror-dda1dec24be3a94965325201d66e5ad412bdbf1e.tar.xz
netpbm-mirror-dda1dec24be3a94965325201d66e5ad412bdbf1e.zip
Use /bin/sh where possible
git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@4273 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rwxr-xr-xtest/411toppm.test2
-rwxr-xr-xtest/Execute-Tests4
-rwxr-xr-xtest/atari-roundtrip.test2
-rwxr-xr-xtest/atk-roundtrip.test2
-rwxr-xr-xtest/avs-roundtrip.test2
-rwxr-xr-xtest/bmp-roundtrip.test2
-rwxr-xr-xtest/channel-stack-roundtrip.test2
-rwxr-xr-xtest/cis-roundtrip.test2
-rwxr-xr-xtest/cmuw-roundtrip.test2
-rwxr-xr-xtest/cut-paste-roundtrip.test2
-rwxr-xr-xtest/enlarge-reduce-roundtrip.test2
-rwxr-xr-xtest/eyuvtoppm.test2
-rwxr-xr-xtest/facesaver-roundtrip.test2
-rwxr-xr-xtest/fiasco-roundtrip.test2
-rwxr-xr-xtest/fits-roundtrip.test2
-rwxr-xr-xtest/gem-roundtrip.test2
-rwxr-xr-xtest/gif-transparent1.test2
-rwxr-xr-xtest/hdiff-roundtrip.test2
-rwxr-xr-xtest/jbig-roundtrip.test2
-rwxr-xr-xtest/jpeg-roundtrip.test2
-rwxr-xr-xtest/jpeg2k-roundtrip.test2
-rwxr-xr-xtest/leaf-roundtrip.test2
-rwxr-xr-xtest/lookup-roundtrip.test2
-rwxr-xr-xtest/macp-roundtrip.test2
-rwxr-xr-xtest/mda-roundtrip.test2
-rwxr-xr-xtest/mgr-roundtrip.test2
-rwxr-xr-xtest/mrf-roundtrip.test2
-rwxr-xr-xtest/pad-crop-roundtrip.test2
-rwxr-xr-xtest/palm-roundtrip2.test2
-rwxr-xr-xtest/pamarith-compare-equal.test2
-rwxr-xr-xtest/pamarith.test2
-rwxr-xr-xtest/pambackground.test2
-rwxr-xr-xtest/pambrighten.test2
-rwxr-xr-xtest/pamchannel.test2
-rwxr-xr-xtest/pamcrater.test2
-rwxr-xr-xtest/pamdepth-roundtrip.test2
-rwxr-xr-xtest/pamdice.test2
-rwxr-xr-xtest/pamditherbw-random.test2
-rwxr-xr-xtest/pamditherbw.test2
-rwxr-xr-xtest/pamedge.test2
-rwxr-xr-xtest/pamenlarge.test2
-rwxr-xr-xtest/pamfile.test2
-rwxr-xr-xtest/pamfind.test2
-rwxr-xr-xtest/pamfix.test28
-rwxr-xr-xtest/pamflip1.test2
-rwxr-xr-xtest/pamflip2.test2
-rwxr-xr-xtest/pamfunc.test2
-rwxr-xr-xtest/pamhue-roundtrip.test2
-rwxr-xr-xtest/pammixmulti-identity.test2
-rwxr-xr-xtest/pamrecolor.test2
-rwxr-xr-xtest/pamscale-reportonly.test2
-rwxr-xr-xtest/pamseq.test2
-rwxr-xr-xtest/pamstretch.test2
-rwxr-xr-xtest/pamsumm.test2
-rwxr-xr-xtest/pamtopam.test2
-rwxr-xr-xtest/pamvalidate.test12
-rwxr-xr-xtest/pbm-ppm-roundtrip.test2
-rwxr-xr-xtest/pbmclean.test2
-rwxr-xr-xtest/pbmlife.test2
-rwxr-xr-xtest/pbmminkowski.test2
-rwxr-xr-xtest/pbmnoise-parameters.test2
-rwxr-xr-xtest/pbmnoise2.test2
-rwxr-xr-xtest/pbmpage.test2
-rwxr-xr-xtest/pbmpscale.test2
-rwxr-xr-xtest/pbmtext-bdf.test2
-rwxr-xr-xtest/pbmtext-iso88591.test2
-rwxr-xr-xtest/pbmtog3.test2
-rwxr-xr-xtest/pbmtopgm.test2
-rwxr-xr-xtest/pbmupc.test2
-rwxr-xr-xtest/pfm-roundtrip.test2
-rwxr-xr-xtest/pgmbentley.test2
-rwxr-xr-xtest/pgmhist.test2
-rwxr-xr-xtest/pgmmake.test2
-rwxr-xr-xtest/pgmminkowski.test2
-rwxr-xr-xtest/pgmnoise-parameters.test2
-rwxr-xr-xtest/pgmramp.test2
-rwxr-xr-xtest/pgmtoppm.test2
-rwxr-xr-xtest/pi3-roundtrip.test2
-rwxr-xr-xtest/pict-roundtrip.test2
-rwxr-xr-xtest/png-roundtrip.test2
-rwxr-xr-xtest/png-roundtrip2.test2
-rwxr-xr-xtest/pnm-pam-roundtrip.test2
-rwxr-xr-xtest/pnm-plain-roundtrip.test2
-rwxr-xr-xtest/pnmcat.test2
-rwxr-xr-xtest/pnmcolormap.test2
-rwxr-xr-xtest/pnmcrop-blank.test2
-rwxr-xr-xtest/pnminvert-roundtrip.test2
-rwxr-xr-xtest/pnminvert.test2
-rwxr-xr-xtest/pnmpaste-pbm.test2
-rwxr-xr-xtest/pnmpsnr.test2
-rwxr-xr-xtest/pnmquant.test2
-rwxr-xr-xtest/pnmquantall.test2
-rwxr-xr-xtest/pnmremap1.test2
-rwxr-xr-xtest/pnmremap2.test2
-rwxr-xr-xtest/pnmshear.test2
-rwxr-xr-xtest/ppmbrighten.test2
-rwxr-xr-xtest/ppmchange-roundtrip.test2
-rwxr-xr-xtest/ppmchange.test2
-rwxr-xr-xtest/ppmcie.test2
-rwxr-xr-xtest/ppmdfont.test2
-rwxr-xr-xtest/ppmdim.test2
-rwxr-xr-xtest/ppmdither.test2
-rwxr-xr-xtest/ppmforge-parameters.test2
-rwxr-xr-xtest/ppmforge.test2
-rwxr-xr-xtest/ppmhist.test2
-rwxr-xr-xtest/ppmmake.test2
-rwxr-xr-xtest/ppmmix.test2
-rwxr-xr-xtest/ppmpat-random.test2
-rwxr-xr-xtest/ppmpat.test2
-rwxr-xr-xtest/ppmrelief.test2
-rwxr-xr-xtest/ppmrough.test2
-rwxr-xr-xtest/ppmtoarbtxt-roundtrip.test2
-rwxr-xr-xtest/ppmtopgm.test2
-rwxr-xr-xtest/ppmtoppm.test2
-rwxr-xr-xtest/ppmwheel.test2
-rwxr-xr-xtest/ps-alt-roundtrip.test2
-rwxr-xr-xtest/ps-flate-roundtrip.test2
-rwxr-xr-xtest/ps-roundtrip.test2
-rwxr-xr-xtest/random-generator.test2
-rwxr-xr-xtest/sbig-roundtrip.test2
-rwxr-xr-xtest/sgi-roundtrip.test2
-rwxr-xr-xtest/st4-roundtrip.test2
-rwxr-xr-xtest/sunrast-roundtrip.test2
-rwxr-xr-xtest/tiff-flate-lzw-roundtrip.test2
-rwxr-xr-xtest/tiff-roundtrip.test2
-rwxr-xr-xtest/tiffcmyk-roundtrip.test2
-rwxr-xr-xtest/utahrle-roundtrip.test2
-rwxr-xr-xtest/wbmp-roundtrip.test2
-rwxr-xr-xtest/winicon-roundtrip.test2
-rwxr-xr-xtest/winicon-roundtrip2.test2
-rwxr-xr-xtest/xpm-roundtrip.test2
-rwxr-xr-xtest/xv-roundtrip.test2
-rwxr-xr-xtest/xwd-roundtrip.test2
-rwxr-xr-xtest/yuv-roundtrip.test2
134 files changed, 153 insertions, 153 deletions
diff --git a/test/411toppm.test b/test/411toppm.test
index 98170c67..7a9e533c 100755
--- a/test/411toppm.test
+++ b/test/411toppm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: 411toppm
 # Also requires:
 
diff --git a/test/Execute-Tests b/test/Execute-Tests
index da4504a4..9b51cfd5 100755
--- a/test/Execute-Tests
+++ b/test/Execute-Tests
@@ -185,8 +185,8 @@ elif [ $VALGRIND_TESTS = "on" ]
   # You may want to add --track-origins=yes to the above.
 
   for i in awk basename cat cksum cmp comm cp cut date dirname \
-           egrep fgrep file grep gs head iconv ls mkdir mktemp perl rm \
-           sed seq sh sort tee tr uniq wc \
+           egrep fgrep file grep gs head iconv ls mkdir mktemp perl \
+           printf rm sed seq sh sort tee tr uniq wc \
            testrandom Available-Testprog
 
     # Tell valgrind not to probe execution of the above programs.
diff --git a/test/atari-roundtrip.test b/test/atari-roundtrip.test
index 413438a1..809cbdb2 100755
--- a/test/atari-roundtrip.test
+++ b/test/atari-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmtopi1 pi1toppm ppmtoneo neotoppm
 # Also requires: pgmramp pamscale pbmmake pamenlarge rgb3toppm pamdepth
 
diff --git a/test/atk-roundtrip.test b/test/atk-roundtrip.test
index f87c2e78..97ac1be7 100755
--- a/test/atk-roundtrip.test
+++ b/test/atk-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtoatk atktopbm
 # Also requires: pbmmake
 
diff --git a/test/avs-roundtrip.test b/test/avs-roundtrip.test
index 042ce91e..255226db 100755
--- a/test/avs-roundtrip.test
+++ b/test/avs-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtoavs avstopam
 # Also requires: pamtopnm
 
diff --git a/test/bmp-roundtrip.test b/test/bmp-roundtrip.test
index df858a09..340eee66 100755
--- a/test/bmp-roundtrip.test
+++ b/test/bmp-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: bmptopnm ppmtobmp
 # Also requires: pamchannel pamtopnm pamseq
 
diff --git a/test/channel-stack-roundtrip.test b/test/channel-stack-roundtrip.test
index dae64605..a640b98d 100755
--- a/test/channel-stack-roundtrip.test
+++ b/test/channel-stack-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamchanel pamstack
 # Also requires: pamtopam pamstack pamtopnm
 
diff --git a/test/cis-roundtrip.test b/test/cis-roundtrip.test
index 4ad1a5e4..ad34173e 100755
--- a/test/cis-roundtrip.test
+++ b/test/cis-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtocis cistopbm
 # Also requires: pbmmake pamcut pamfile
 
diff --git a/test/cmuw-roundtrip.test b/test/cmuw-roundtrip.test
index 725f9131..8664a1e6 100755
--- a/test/cmuw-roundtrip.test
+++ b/test/cmuw-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtocmuwm cmuwmtopbm
 # Also requires:
 
diff --git a/test/cut-paste-roundtrip.test b/test/cut-paste-roundtrip.test
index ac2c0fe7..bec8baf5 100755
--- a/test/cut-paste-roundtrip.test
+++ b/test/cut-paste-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamcut pnmpaste
 # Also requires: pbmmake pnmpad
 
diff --git a/test/enlarge-reduce-roundtrip.test b/test/enlarge-reduce-roundtrip.test
index 54b52c60..5d223cf1 100755
--- a/test/enlarge-reduce-roundtrip.test
+++ b/test/enlarge-reduce-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamenlarge pbmpscale pbmreduce
 # Also requires: pbmtext
 
diff --git a/test/eyuvtoppm.test b/test/eyuvtoppm.test
index b28b4539..6bbc2e7e 100755
--- a/test/eyuvtoppm.test
+++ b/test/eyuvtoppm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: eyuvtoppm
 # Also requires:
 
diff --git a/test/facesaver-roundtrip.test b/test/facesaver-roundtrip.test
index f4b8f069..75fcf662 100755
--- a/test/facesaver-roundtrip.test
+++ b/test/facesaver-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmtofs fstopgm
 # Also requires: pamchannel pamtopnm
 
diff --git a/test/fiasco-roundtrip.test b/test/fiasco-roundtrip.test
index 8325a37d..8d5fdaa6 100755
--- a/test/fiasco-roundtrip.test
+++ b/test/fiasco-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtofiasco fiascotopnm
 # Also requires: pnmpad pnmpsnr
 
diff --git a/test/fits-roundtrip.test b/test/fits-roundtrip.test
index e793df9a..030a519e 100755
--- a/test/fits-roundtrip.test
+++ b/test/fits-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtofits fitstopnm
 # Also requires:
 
diff --git a/test/gem-roundtrip.test b/test/gem-roundtrip.test
index 106fe2cf..d97a5cb9 100755
--- a/test/gem-roundtrip.test
+++ b/test/gem-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtogem gemtopnm
 # Also requires:
 
diff --git a/test/gif-transparent1.test b/test/gif-transparent1.test
index 4684d1fc..c2da5468 100755
--- a/test/gif-transparent1.test
+++ b/test/gif-transparent1.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: giftopnm pamtogif ppmtogif
 # Also requires: pamarith pamcomp pamdepth pamenlarge pamstack pbmmake
 # Also requires: pnminvert ppmchange ppmpat ppmtopgm ppmtoppm 
diff --git a/test/hdiff-roundtrip.test b/test/hdiff-roundtrip.test
index a4a4a906..ec7afc2c 100755
--- a/test/hdiff-roundtrip.test
+++ b/test/hdiff-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: hdifftopam pamtohdiff
 # Also requires:
 
diff --git a/test/jbig-roundtrip.test b/test/jbig-roundtrip.test
index eac742ff..11cd1778 100755
--- a/test/jbig-roundtrip.test
+++ b/test/jbig-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtojbig jbigtopnm
 # Also requires: pamchannel pamtopnm
 
diff --git a/test/jpeg-roundtrip.test b/test/jpeg-roundtrip.test
index 7cc0fc20..834c02e5 100755
--- a/test/jpeg-roundtrip.test
+++ b/test/jpeg-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtojpeg jpegtopnm
 # Also requires: pnmpsnr
 
diff --git a/test/jpeg2k-roundtrip.test b/test/jpeg2k-roundtrip.test
index 0995849d..4a09201d 100755
--- a/test/jpeg2k-roundtrip.test
+++ b/test/jpeg2k-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtojpeg2k jpeg2ktopam
 # Also requires:
 
diff --git a/test/leaf-roundtrip.test b/test/leaf-roundtrip.test
index 5628ed01..94b31092 100755
--- a/test/leaf-roundtrip.test
+++ b/test/leaf-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmtoleaf leaftoppm
 # Also requires:
 
diff --git a/test/lookup-roundtrip.test b/test/lookup-roundtrip.test
index 491294a2..19ebd40a 100755
--- a/test/lookup-roundtrip.test
+++ b/test/lookup-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamlookup pamunlookup
 # Also requires: ppmhist
 
diff --git a/test/macp-roundtrip.test b/test/macp-roundtrip.test
index b264e3d1..9def7c4c 100755
--- a/test/macp-roundtrip.test
+++ b/test/macp-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtomacp macptopbm
 # Also requires: pnmcrop pbmpage pbmupc pnmpad pbmmake
 
diff --git a/test/mda-roundtrip.test b/test/mda-roundtrip.test
index 6b4d89b9..c47d433e 100755
--- a/test/mda-roundtrip.test
+++ b/test/mda-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtomda mdatopbm
 # Also requires: pbmmake pnmpad pamcut pamfile
 
diff --git a/test/mgr-roundtrip.test b/test/mgr-roundtrip.test
index d96d836d..9fb6211c 100755
--- a/test/mgr-roundtrip.test
+++ b/test/mgr-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtomgr mgrtopbm
 # Also requires: pbmmake
 
diff --git a/test/mrf-roundtrip.test b/test/mrf-roundtrip.test
index 8513a908..5ce604e6 100755
--- a/test/mrf-roundtrip.test
+++ b/test/mrf-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtomrf mrftopbm
 # Also requires:
 
diff --git a/test/pad-crop-roundtrip.test b/test/pad-crop-roundtrip.test
index 8cca8a5f..31e02c99 100755
--- a/test/pad-crop-roundtrip.test
+++ b/test/pad-crop-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmcrop pnmmargin pnmpad
 # Also requires:
 
diff --git a/test/palm-roundtrip2.test b/test/palm-roundtrip2.test
index 4c94df8c..f0c9b7c8 100755
--- a/test/palm-roundtrip2.test
+++ b/test/palm-roundtrip2.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtopalm palmtopnm
 # Also requires: pnmremap
 
diff --git a/test/pamarith-compare-equal.test b/test/pamarith-compare-equal.test
index 0af9ee27..7d1062b7 100755
--- a/test/pamarith-compare-equal.test
+++ b/test/pamarith-compare-equal.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamarith
 # Also requires: ppmpat pnminvert pamfile pbmmake pgmmake pamcut
 
diff --git a/test/pamarith.test b/test/pamarith.test
index b6b4538c..9c95db80 100755
--- a/test/pamarith.test
+++ b/test/pamarith.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamarith
 # Also requires: pamtopnm rgb3toppm pamenlarge pnmcat pamseq pbmmake pgmmake
 # Also requires: ppmpat pamchannel
diff --git a/test/pambackground.test b/test/pambackground.test
index 522f4823..eca9cc93 100755
--- a/test/pambackground.test
+++ b/test/pambackground.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pambackground
 # Also requires: pamgradient pamseq pbmmake pnmmargin pnmremap pnmtile pnmpad
 
diff --git a/test/pambrighten.test b/test/pambrighten.test
index 3e1a3eb1..00e405dd 100755
--- a/test/pambrighten.test
+++ b/test/pambrighten.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pambrighten
 # Also requires: pgmramp
 
diff --git a/test/pamchannel.test b/test/pamchannel.test
index bce1d4eb..f72725ee 100755
--- a/test/pamchannel.test
+++ b/test/pamchannel.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamchannel
 # Also requires: pamtopam pamtopnm
 
diff --git a/test/pamcrater.test b/test/pamcrater.test
index 25b12135..61414480 100755
--- a/test/pamcrater.test
+++ b/test/pamcrater.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamcrater pamshadedrelief
 # Also requires: pamstack pamvalidate pamcut pamflip
 
diff --git a/test/pamdepth-roundtrip.test b/test/pamdepth-roundtrip.test
index d3f0d6d3..6da9a612 100755
--- a/test/pamdepth-roundtrip.test
+++ b/test/pamdepth-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamdepth pgmtopbm
 # Also requires:
 
diff --git a/test/pamdice.test b/test/pamdice.test
index 25695d5a..04dd4d78 100755
--- a/test/pamdice.test
+++ b/test/pamdice.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamdice
 # Also requires: pbmmake
 
diff --git a/test/pamditherbw-random.test b/test/pamditherbw-random.test
index 5bff4bac..7a5de7bd 100755
--- a/test/pamditherbw-random.test
+++ b/test/pamditherbw-random.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamditherbw
 # Also requires: pamchannel pamtopnm
 
diff --git a/test/pamditherbw.test b/test/pamditherbw.test
index 43d2b00f..3f37f117 100755
--- a/test/pamditherbw.test
+++ b/test/pamditherbw.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamditherbw
 # Also requires: pamchannel pamtopnm
 
diff --git a/test/pamedge.test b/test/pamedge.test
index c63b30cc..8121f858 100755
--- a/test/pamedge.test
+++ b/test/pamedge.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamedge
 # Also requires: pbmpscale pbmtext pgmtopbm pgmtopgm ppmtopgm
 
diff --git a/test/pamenlarge.test b/test/pamenlarge.test
index 851362e8..7c46881d 100755
--- a/test/pamenlarge.test
+++ b/test/pamenlarge.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamenlarge
 # Also requires: pamchannel pamseq pamtopnm
 
diff --git a/test/pamfile.test b/test/pamfile.test
index 41aa3c85..a0a5c65b 100755
--- a/test/pamfile.test
+++ b/test/pamfile.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamfile
 # Also requires: pamchannel pamtopnm
 
diff --git a/test/pamfind.test b/test/pamfind.test
index e689754f..87ef5f9f 100755
--- a/test/pamfind.test
+++ b/test/pamfind.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamfind
 # Also requires:
 
diff --git a/test/pamfix.test b/test/pamfix.test
index 1293dfe2..89d3beb6 100755
--- a/test/pamfix.test
+++ b/test/pamfix.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamfix
 # Also requires: pbmmake
 
@@ -9,37 +9,37 @@ echo "Test 1"
 
 pbmmake -g 5 5 | pamfix -truncate -plain
 
-echo -e "P1\n5 5\n01010\n10101\n01010\n00001\n1" |\
+printf "P1\n5 5\n01010\n10101\n01010\n00001\n1\n" |\
   pamfix -truncate -plain
 
-echo -e "P1\n5 5\n01010\n10101\n01010\n0000\n1" |\
+printf "P1\n5 5\n01010\n10101\n01010\n0000\n1\n" |\
   pamfix -truncate -plain
 
-echo -e "P1\n5 5\n01010\n10102\n01010\n00001\n1" |\
+printf "P1\n5 5\n01010\n10102\n01010\n00001\n1\n" |\
   pamfix -truncate -plain
 
 # Test 2
 
 echo "Test 2"
 
-echo -e "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 0" |\
+printf "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 0\n" |\
   pamfix -truncate -plain
 
-echo -e "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7" |\
+printf "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7\n" |\
   pamfix -truncate -plain
-echo -e "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 8" |\
+printf "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 8\n" |\
   pamfix -truncate -plain
 
-echo -e "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 8" |\
+printf "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 8\n" |\
   pamfix -change -plain
 
-echo -e "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 8" |\
+printf "P2\n3 3\n7\n0 1 2\n3 4 5\n6 7 8\n" |\
  pamfix -clip -plain
 
-echo -e "P2\n3 3\n7\n0 1 2\n3 4 8\n0 0 0" |\
+printf "P2\n3 3\n7\n0 1 2\n3 4 8\n0 0 0\n" |\
   pamfix -change -truncate -plain
 
-echo -e "P2\n3 3\n7\n0 1 2\n3 4 8\n0 0 0" |\
+printf "P2\n3 3\n7\n0 1 2\n3 4 8\n0 0 0\n" |\
   pamfix -clip -truncate -plain
 
 # Test Invalid
@@ -53,17 +53,17 @@ echo "Invalid command-line combination, invalid input" 1>&2
 echo "Error messages should appear below the line." 1>&2
 echo "-----------------------------------------------------------" 1>&2
 
-echo -e "P2\n3 2\n7\n0 1 2\n6 7 8" | pamfix -change -clip > ${test_out} || \
+printf "P2\n3 2\n7\n0 1 2\n6 7 8\n" | pamfix -change -clip > ${test_out} || \
   echo -n "Expected failure 1";
   test -s ${test_out}; echo " "$?
   rm -f ${test_out}
 
-echo -e "P1\n5 5" | pamfix -truncate -plain > ${test_out} || \
+printf "P1\n5 5\n" | pamfix -truncate -plain > ${test_out} || \
   echo -n "Expected failure 2";
   test -s ${test_out}; echo " "$?
   rm -f ${test_out}
 
-echo -e "P2\n3 3\255" | pamfix -truncate -plain > ${test_out} || \
+printf "P2\n3 3\255\n" | pamfix -truncate -plain > ${test_out} || \
   echo -n "Expected failure 3";
   test -s ${test_out}; echo " "$?
   rm -f ${test_out}
diff --git a/test/pamflip1.test b/test/pamflip1.test
index b30bf6b0..f8da3a74 100755
--- a/test/pamflip1.test
+++ b/test/pamflip1.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamflip
 # Also requires: pamseq
 
diff --git a/test/pamflip2.test b/test/pamflip2.test
index 8df293b5..0393d73e 100755
--- a/test/pamflip2.test
+++ b/test/pamflip2.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamflip
 # Also requires:
 
diff --git a/test/pamfunc.test b/test/pamfunc.test
index fbb39164..0d1a4f3c 100755
--- a/test/pamfunc.test
+++ b/test/pamfunc.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamfunc
 # Also requires: pamseq pamtopnm pbmmake
 
diff --git a/test/pamhue-roundtrip.test b/test/pamhue-roundtrip.test
index 643ac99a..d68ee344 100755
--- a/test/pamhue-roundtrip.test
+++ b/test/pamhue-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamhue
 # Also requires:
 
diff --git a/test/pammixmulti-identity.test b/test/pammixmulti-identity.test
index d205c359..21136fbe 100755
--- a/test/pammixmulti-identity.test
+++ b/test/pammixmulti-identity.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pammixmulti
 # Also requires: pgmnoise pnminvert pamsumm
 
diff --git a/test/pamrecolor.test b/test/pamrecolor.test
index 67c6f19d..6f323169 100755
--- a/test/pamrecolor.test
+++ b/test/pamrecolor.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamrecolor
 # Also requires: ppmtopgm pgmmake
 
diff --git a/test/pamscale-reportonly.test b/test/pamscale-reportonly.test
index a5d2cdcc..f65bcb93 100755
--- a/test/pamscale-reportonly.test
+++ b/test/pamscale-reportonly.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamscale
 # Also requires:
 
diff --git a/test/pamseq.test b/test/pamseq.test
index a98a6545..3fe0fc31 100755
--- a/test/pamseq.test
+++ b/test/pamseq.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamseq
 # Also requires:
 
diff --git a/test/pamstretch.test b/test/pamstretch.test
index 8cbc555a..38e3a649 100755
--- a/test/pamstretch.test
+++ b/test/pamstretch.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamstretch
 # Also requires: pamcut pamfile
 
diff --git a/test/pamsumm.test b/test/pamsumm.test
index 32a9b8c1..fb15c0c4 100755
--- a/test/pamsumm.test
+++ b/test/pamsumm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamsumm
 # Also requires:
 
diff --git a/test/pamtopam.test b/test/pamtopam.test
index e9b4f93d..c12470ec 100755
--- a/test/pamtopam.test
+++ b/test/pamtopam.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtopam
 # Also requires: pgmmake pamseq
 
diff --git a/test/pamvalidate.test b/test/pamvalidate.test
index 4cabc7df..708197da 100755
--- a/test/pamvalidate.test
+++ b/test/pamvalidate.test
@@ -1,20 +1,20 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamvalidate
 # Also requires:
 
 echo "valid"
-echo -e "P1\n5 5\n01010\n10101\n01010\n00000\n11111\n" | pamvalidate -plain
+printf "P1\n5 5\n01010\n10101\n01010\n00000\n11111\n" | pamvalidate -plain
 
 echo "not valid: Should print 0 four times"
-echo -e "P1\n5 5\n01010\n10101\n01010\n00000\n1111\n"  | pamvalidate | \
+printf "P1\n5 5\n01010\n10101\n01010\n00000\n1111\n"  | pamvalidate | \
   wc -c | tr -d ' '
 
-echo -e "P1\n5 5\n01010\n10102\n01010\n00001\n11111\n" | pamvalidate | \
+printf "P1\n5 5\n01010\n10102\n01010\n00001\n11111\n" | pamvalidate | \
   wc -c | tr -d ' '
 
-echo -e "P1\n5\n01010\n10101\n01010\n00000\n11111\n" | pamvalidate | \
+printf "P1\n5\n01010\n10101\n01010\n00000\n11111\n" | pamvalidate | \
   wc -c | tr -d ' '
 
-echo -e "P1\n5 5" | pamvalidate | wc -c | tr -d ' '
+printf "P1\n5 5" | pamvalidate | wc -c | tr -d ' '
 
 
diff --git a/test/pbm-ppm-roundtrip.test b/test/pbm-ppm-roundtrip.test
index 23b6c1c4..9a3ff79f 100755
--- a/test/pbm-ppm-roundtrip.test
+++ b/test/pbm-ppm-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmtoppm ppmtopgm ppmtoppm pgmtopbm
 # Also requires: pbmmake ppmcolormask pnminvert
 
diff --git a/test/pbmclean.test b/test/pbmclean.test
index 0e17ba8a..7c0c4d6d 100755
--- a/test/pbmclean.test
+++ b/test/pbmclean.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmclean
 # Also requires: pbmmake pbmpage pbmtext pnmmargin pnmpad
 
diff --git a/test/pbmlife.test b/test/pbmlife.test
index b4d65ec4..c292ee65 100755
--- a/test/pbmlife.test
+++ b/test/pbmlife.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmlife pbmminkowski
 # Also requires: pbmtext
 
diff --git a/test/pbmminkowski.test b/test/pbmminkowski.test
index 3ad96dfa..790e45bd 100755
--- a/test/pbmminkowski.test
+++ b/test/pbmminkowski.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmminkowski
 # Also requires: pbmmake pnmpad
 
diff --git a/test/pbmnoise-parameters.test b/test/pbmnoise-parameters.test
index f3348ae8..e467bfd5 100755
--- a/test/pbmnoise-parameters.test
+++ b/test/pbmnoise-parameters.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmnoise
 # Also requires:
 
diff --git a/test/pbmnoise2.test b/test/pbmnoise2.test
index 7476d03c..8845e3b8 100755
--- a/test/pbmnoise2.test
+++ b/test/pbmnoise2.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmnoise
 # Also requires: pgmhist
 
diff --git a/test/pbmpage.test b/test/pbmpage.test
index 2ee27122..2805ec97 100755
--- a/test/pbmpage.test
+++ b/test/pbmpage.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmpage
 # Also requires:
 
diff --git a/test/pbmpscale.test b/test/pbmpscale.test
index a92511b0..9c38bb2e 100755
--- a/test/pbmpscale.test
+++ b/test/pbmpscale.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmpscale
 # Also requires: pbmtext
 
diff --git a/test/pbmtext-bdf.test b/test/pbmtext-bdf.test
index d3d4b37f..f1d2019e 100755
--- a/test/pbmtext-bdf.test
+++ b/test/pbmtext-bdf.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtext
 # Also requires:
 
diff --git a/test/pbmtext-iso88591.test b/test/pbmtext-iso88591.test
index 69e6ec90..6df296dd 100755
--- a/test/pbmtext-iso88591.test
+++ b/test/pbmtext-iso88591.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtext
 # Also requires:
 
diff --git a/test/pbmtog3.test b/test/pbmtog3.test
index c23e8af0..8b9c29e1 100755
--- a/test/pbmtog3.test
+++ b/test/pbmtog3.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtog3
 # Also requires: pbmmake
 
diff --git a/test/pbmtopgm.test b/test/pbmtopgm.test
index 53b25aab..46c04705 100755
--- a/test/pbmtopgm.test
+++ b/test/pbmtopgm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtopgm
 # Also requires:
 
diff --git a/test/pbmupc.test b/test/pbmupc.test
index f4a4d1e8..8d726de5 100755
--- a/test/pbmupc.test
+++ b/test/pbmupc.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmupc
 # Also requires:
 
diff --git a/test/pfm-roundtrip.test b/test/pfm-roundtrip.test
index f1b5d418..95bfc62f 100755
--- a/test/pfm-roundtrip.test
+++ b/test/pfm-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtopfm pfmtopam
 # Also requires: pamtopnm
 
diff --git a/test/pgmbentley.test b/test/pgmbentley.test
index 0429d54b..800aa1f7 100755
--- a/test/pgmbentley.test
+++ b/test/pgmbentley.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmbentley
 # Also requires: pgmramp
 
diff --git a/test/pgmhist.test b/test/pgmhist.test
index b028b07a..83f3c52e 100755
--- a/test/pgmhist.test
+++ b/test/pgmhist.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmhist
 # Also requires: pgmramp
 
diff --git a/test/pgmmake.test b/test/pgmmake.test
index 0ec5efd6..84c03778 100755
--- a/test/pgmmake.test
+++ b/test/pgmmake.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmmake
 # Also requires:
 
diff --git a/test/pgmminkowski.test b/test/pgmminkowski.test
index 9d8c257d..e81de3e1 100755
--- a/test/pgmminkowski.test
+++ b/test/pgmminkowski.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmminkowski
 # Also requires: pbmmake pgmmake pnmpad
 
diff --git a/test/pgmnoise-parameters.test b/test/pgmnoise-parameters.test
index bf3deb3f..2615c8e8 100755
--- a/test/pgmnoise-parameters.test
+++ b/test/pgmnoise-parameters.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmnoise
 # Also requires:
 
diff --git a/test/pgmramp.test b/test/pgmramp.test
index 50a3cf6d..c3b0ad1c 100755
--- a/test/pgmramp.test
+++ b/test/pgmramp.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmramp
 # Also requires:
 
diff --git a/test/pgmtoppm.test b/test/pgmtoppm.test
index 622a0688..d98418b8 100755
--- a/test/pgmtoppm.test
+++ b/test/pgmtoppm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmtoppm
 # Also requires: pamtopnm pnminvert pamseq pgmramp
 
diff --git a/test/pi3-roundtrip.test b/test/pi3-roundtrip.test
index 6c75acc7..d795157d 100755
--- a/test/pi3-roundtrip.test
+++ b/test/pi3-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtopi3 pi3topbm
 # Also requires: pbmmake pamcut pamfile
 
diff --git a/test/pict-roundtrip.test b/test/pict-roundtrip.test
index cd207d48..b4910064 100755
--- a/test/pict-roundtrip.test
+++ b/test/pict-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: picttoppm ppmtopict
 # Also requires: pamseq pamdepth pamtopnm pnmremap
 
diff --git a/test/png-roundtrip.test b/test/png-roundtrip.test
index fcb5927a..97cf9b2c 100755
--- a/test/png-roundtrip.test
+++ b/test/png-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pngtopam pnmtopng
 # Also requires:
 
diff --git a/test/png-roundtrip2.test b/test/png-roundtrip2.test
index 5705a1ae..85149a91 100755
--- a/test/png-roundtrip2.test
+++ b/test/png-roundtrip2.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pngtopam pamtopng
 # Also requires:
 
diff --git a/test/pnm-pam-roundtrip.test b/test/pnm-pam-roundtrip.test
index 13925f74..da3021f9 100755
--- a/test/pnm-pam-roundtrip.test
+++ b/test/pnm-pam-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtopam pamtopnm
 # Also requires:
 
diff --git a/test/pnm-plain-roundtrip.test b/test/pnm-plain-roundtrip.test
index bf685e85..14b8ca57 100755
--- a/test/pnm-plain-roundtrip.test
+++ b/test/pnm-plain-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtopnm
 #
 
diff --git a/test/pnmcat.test b/test/pnmcat.test
index c098d967..173aa608 100755
--- a/test/pnmcat.test
+++ b/test/pnmcat.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmcat
 # Also requires: pbmmake pgmramp ppmtoppm
 
diff --git a/test/pnmcolormap.test b/test/pnmcolormap.test
index 90d11f6d..089e0d1e 100755
--- a/test/pnmcolormap.test
+++ b/test/pnmcolormap.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmcolormap
 # Also requires:
 
diff --git a/test/pnmcrop-blank.test b/test/pnmcrop-blank.test
index 087ad65e..bb26bdc0 100755
--- a/test/pnmcrop-blank.test
+++ b/test/pnmcrop-blank.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmcrop
 # Also requires: pbmmake ppmmake
 
diff --git a/test/pnminvert-roundtrip.test b/test/pnminvert-roundtrip.test
index ddc5dc5d..c0f702c2 100755
--- a/test/pnminvert-roundtrip.test
+++ b/test/pnminvert-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnminvert
 # Also requires:
 
diff --git a/test/pnminvert.test b/test/pnminvert.test
index 68a4e066..d2789bdf 100755
--- a/test/pnminvert.test
+++ b/test/pnminvert.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnminvert
 # Also requires: pbmmake pamchannel pamtopnm
 
diff --git a/test/pnmpaste-pbm.test b/test/pnmpaste-pbm.test
index b75797af..70f2b266 100755
--- a/test/pnmpaste-pbm.test
+++ b/test/pnmpaste-pbm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmpaste
 # Also requires: pbmmake
 
diff --git a/test/pnmpsnr.test b/test/pnmpsnr.test
index 2de7fc95..3223f86d 100755
--- a/test/pnmpsnr.test
+++ b/test/pnmpsnr.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmpsnr
 # Also requires: pbmmake
 
diff --git a/test/pnmquant.test b/test/pnmquant.test
index 24cee077..100fb52e 100755
--- a/test/pnmquant.test
+++ b/test/pnmquant.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmquant
 # Also requires: ppmhist
 
diff --git a/test/pnmquantall.test b/test/pnmquantall.test
index 4c1bb77f..fb3beebb 100755
--- a/test/pnmquantall.test
+++ b/test/pnmquantall.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmquantall
 # Also requires: ppmtorgb3 pgmhist pnmcat
 
diff --git a/test/pnmremap1.test b/test/pnmremap1.test
index b1cdd6d9..fcd382a7 100755
--- a/test/pnmremap1.test
+++ b/test/pnmremap1.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmremap
 # Also requires: pamseq pamtopnm
 
diff --git a/test/pnmremap2.test b/test/pnmremap2.test
index 76c2d566..7eea2c4a 100755
--- a/test/pnmremap2.test
+++ b/test/pnmremap2.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmremap
 # Also requires: pamdepth pamseq pamtopnm
 
diff --git a/test/pnmshear.test b/test/pnmshear.test
index a19a9852..42e5c816 100755
--- a/test/pnmshear.test
+++ b/test/pnmshear.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmshear
 # Also requires: pbmmake pnmpad
 
diff --git a/test/ppmbrighten.test b/test/ppmbrighten.test
index 29ec78fb..e346d1d0 100755
--- a/test/ppmbrighten.test
+++ b/test/ppmbrighten.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmbrighten
 # Also requires: pnmnorm pambrighten pamsumm 
 
diff --git a/test/ppmchange-roundtrip.test b/test/ppmchange-roundtrip.test
index c1a35078..5bd18150 100755
--- a/test/ppmchange-roundtrip.test
+++ b/test/ppmchange-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmchange
 # Also requires: pgmtopbm pnminvert ppmtopgm
 
diff --git a/test/ppmchange.test b/test/ppmchange.test
index a749a5d2..a579631b 100755
--- a/test/ppmchange.test
+++ b/test/ppmchange.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmchange
 # Also requires: ppmrainbow pgmramp ppmhist
 
diff --git a/test/ppmcie.test b/test/ppmcie.test
index 0ce69dea..dd7f121f 100755
--- a/test/ppmcie.test
+++ b/test/ppmcie.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmcie
 # Also requires: pamsumm pamsharpness
 
diff --git a/test/ppmdfont.test b/test/ppmdfont.test
index 7d894789..e6b461f1 100755
--- a/test/ppmdfont.test
+++ b/test/ppmdfont.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmdmkfont ppmddumpfont ppmdcfont
 # Also requires:
 
diff --git a/test/ppmdim.test b/test/ppmdim.test
index 848e2e9f..48d9e891 100755
--- a/test/ppmdim.test
+++ b/test/ppmdim.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmdim
 # Also requires: pamfunc pamarith pamsumm
 
diff --git a/test/ppmdither.test b/test/ppmdither.test
index 7e32ef59..f82c34ff 100755
--- a/test/ppmdither.test
+++ b/test/ppmdither.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmdither
 # Also requires:
 
diff --git a/test/ppmforge-parameters.test b/test/ppmforge-parameters.test
index efc846a8..83758213 100755
--- a/test/ppmforge-parameters.test
+++ b/test/ppmforge-parameters.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmforge
 # Also requires: pamfile
 
diff --git a/test/ppmforge.test b/test/ppmforge.test
index 959eb360..e83ad553 100755
--- a/test/ppmforge.test
+++ b/test/ppmforge.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmforge
 # Also requires: pnmpsnr
 
diff --git a/test/ppmhist.test b/test/ppmhist.test
index b5812503..34eb0ea0 100755
--- a/test/ppmhist.test
+++ b/test/ppmhist.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmhist
 # Also requires: pgmramp pamtopnm pbmmake pamseq ppmpat
 
diff --git a/test/ppmmake.test b/test/ppmmake.test
index 26b592f7..714573b2 100755
--- a/test/ppmmake.test
+++ b/test/ppmmake.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmmake
 # Also requires:
 
diff --git a/test/ppmmix.test b/test/ppmmix.test
index e1c6486b..c3900baf 100755
--- a/test/ppmmix.test
+++ b/test/ppmmix.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmmix
 # Also requires: pamdepth pamenlarge pamsumm pbmmake
 # Also requires: pgmtopgm pnminvert ppmtopgm
diff --git a/test/ppmpat-random.test b/test/ppmpat-random.test
index 44dd2485..b1b78d94 100755
--- a/test/ppmpat-random.test
+++ b/test/ppmpat-random.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmpat
 # Also requires:
 
diff --git a/test/ppmpat.test b/test/ppmpat.test
index 6e916944..8f00b9f5 100755
--- a/test/ppmpat.test
+++ b/test/ppmpat.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmpat
 # Also requires:
 
diff --git a/test/ppmrelief.test b/test/ppmrelief.test
index 3467dcde..c7241663 100755
--- a/test/ppmrelief.test
+++ b/test/ppmrelief.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmrelief
 # Also requires: pbmmake pgmramp pamflip
 
diff --git a/test/ppmrough.test b/test/ppmrough.test
index bd4211a3..b10ba941 100755
--- a/test/ppmrough.test
+++ b/test/ppmrough.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmrough
 # Also requires:
 
diff --git a/test/ppmtoarbtxt-roundtrip.test b/test/ppmtoarbtxt-roundtrip.test
index 7c64114e..f63aabe2 100755
--- a/test/ppmtoarbtxt-roundtrip.test
+++ b/test/ppmtoarbtxt-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmtoarbtxt
 # Also requires: pnminvert pamtopnm
 
diff --git a/test/ppmtopgm.test b/test/ppmtopgm.test
index 8503194b..696b660c 100755
--- a/test/ppmtopgm.test
+++ b/test/ppmtopgm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmtopgm
 # Also requires:
 
diff --git a/test/ppmtoppm.test b/test/ppmtoppm.test
index 411c17f6..90ff2ddf 100755
--- a/test/ppmtoppm.test
+++ b/test/ppmtoppm.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmtoppm
 # Also requires: pbmmake pgmramp
 
diff --git a/test/ppmwheel.test b/test/ppmwheel.test
index 150a75e5..fc390f26 100755
--- a/test/ppmwheel.test
+++ b/test/ppmwheel.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmwheel
 # Also requires:
 
diff --git a/test/ps-alt-roundtrip.test b/test/ps-alt-roundtrip.test
index 07081d3a..bdecaffd 100755
--- a/test/ps-alt-roundtrip.test
+++ b/test/ps-alt-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtoepsi pbmtopsg3 psidtopgm pstopnm
 # Also requires: gs pnmcrop
 
diff --git a/test/ps-flate-roundtrip.test b/test/ps-flate-roundtrip.test
index 888f2856..9fc24ddb 100755
--- a/test/ps-flate-roundtrip.test
+++ b/test/ps-flate-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtops pstopnm
 # Also requires: pamtopnm gs zlib
 
diff --git a/test/ps-roundtrip.test b/test/ps-roundtrip.test
index efce4fd6..8b107315 100755
--- a/test/ps-roundtrip.test
+++ b/test/ps-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtops pstopnm
 # Also requires: pamtopnm gs pbmmake pnmshear pnmpad pnmcat
 
diff --git a/test/random-generator.test b/test/random-generator.test
index 23dc1903..14b6f11a 100755
--- a/test/random-generator.test
+++ b/test/random-generator.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmnoise
 # Also requires:
 
diff --git a/test/sbig-roundtrip.test b/test/sbig-roundtrip.test
index 1fdaccfd..2611fa89 100755
--- a/test/sbig-roundtrip.test
+++ b/test/sbig-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmtosbig sbigtopgm
 # Also requires: pamchannel pamtopnm
 
diff --git a/test/sgi-roundtrip.test b/test/sgi-roundtrip.test
index 073755d8..50a9fbc2 100755
--- a/test/sgi-roundtrip.test
+++ b/test/sgi-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtosgi sgitopnm
 # Also requires: rgb3toppm pamdepth pamtopnm pgmtopbm
 
diff --git a/test/st4-roundtrip.test b/test/st4-roundtrip.test
index ffe8f348..f2e15078 100755
--- a/test/st4-roundtrip.test
+++ b/test/st4-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pgmtost4 st4topgm
 # Also requires: pamchannel pamtopnm pamcut
 
diff --git a/test/sunrast-roundtrip.test b/test/sunrast-roundtrip.test
index a5cfa8c7..dfe68402 100755
--- a/test/sunrast-roundtrip.test
+++ b/test/sunrast-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtorast rasttopnm
 # Also requires:
 
diff --git a/test/tiff-flate-lzw-roundtrip.test b/test/tiff-flate-lzw-roundtrip.test
index f62c6767..2b0a4536 100755
--- a/test/tiff-flate-lzw-roundtrip.test
+++ b/test/tiff-flate-lzw-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtotiff tifftopnm
 # Also requires: ppmpat
 
diff --git a/test/tiff-roundtrip.test b/test/tiff-roundtrip.test
index b4169319..c33ee904 100755
--- a/test/tiff-roundtrip.test
+++ b/test/tiff-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtotiff tifftopnm
 # Also requires: ppmpat pampick ppmtopgm
 
diff --git a/test/tiffcmyk-roundtrip.test b/test/tiffcmyk-roundtrip.test
index 133c81b7..ebbc5666 100755
--- a/test/tiffcmyk-roundtrip.test
+++ b/test/tiffcmyk-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtotiffcmyk tifftopnm
 # Also requires: pnmpsnr
 
diff --git a/test/utahrle-roundtrip.test b/test/utahrle-roundtrip.test
index 17f1a6c4..4dce0b40 100755
--- a/test/utahrle-roundtrip.test
+++ b/test/utahrle-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtorle rletopnm
 # Also requires: pamchannel pamtopnm
 
diff --git a/test/wbmp-roundtrip.test b/test/wbmp-roundtrip.test
index 6197032c..cf747487 100755
--- a/test/wbmp-roundtrip.test
+++ b/test/wbmp-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pbmtowbmp wbmptopbm
 # Also requires:
 
diff --git a/test/winicon-roundtrip.test b/test/winicon-roundtrip.test
index b4814fee..0acadd53 100755
--- a/test/winicon-roundtrip.test
+++ b/test/winicon-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtowinicon ppmtowinicon winicontopam
 # Also requires: pamchannel pamcut pamdepth pamtopam
 
diff --git a/test/winicon-roundtrip2.test b/test/winicon-roundtrip2.test
index d1f29cc9..eae4ce90 100755
--- a/test/winicon-roundtrip2.test
+++ b/test/winicon-roundtrip2.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtowinicon winicontopam
 # Also requires: pamchannel pamdepth pamstack pamtopam pbmmake ppmpat
 
diff --git a/test/xpm-roundtrip.test b/test/xpm-roundtrip.test
index 61a5192d..6e3e415b 100755
--- a/test/xpm-roundtrip.test
+++ b/test/xpm-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmtoxpm xpmtoppm
 # Also requires: pgmtopbm ppmtopgm
 
diff --git a/test/xv-roundtrip.test b/test/xv-roundtrip.test
index d73933a1..70b298df 100755
--- a/test/xv-roundtrip.test
+++ b/test/xv-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pamtoxvmini xvminitoppm
 # Also requires: pamdepth
 
diff --git a/test/xwd-roundtrip.test b/test/xwd-roundtrip.test
index 4dffbbb0..2d00971d 100755
--- a/test/xwd-roundtrip.test
+++ b/test/xwd-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: pnmtoxwd xwdtopnm
 # Also requires: pamchannel pamtopnm pamdepth
 
diff --git a/test/yuv-roundtrip.test b/test/yuv-roundtrip.test
index e339b418..68f459e8 100755
--- a/test/yuv-roundtrip.test
+++ b/test/yuv-roundtrip.test
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
 # This script tests: ppmtoyuv yuvtoppm
 # Also requires: pamgradient