diff --git a/elf/Makefile b/elf/Makefile
index c587e9f06e..75994888bd 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -947,7 +947,7 @@ $(objpfx)tst-pathopt: $(libdl)
 $(objpfx)tst-pathopt.out: tst-pathopt.sh $(objpfx)tst-pathopt \
 			  $(objpfx)pathoptobj.so
 	$(SHELL) $< $(common-objpfx) '$(test-wrapper-env)' \
-		 '$(run-program-env)' > $@; \
+		 '$(run-program-env)'; \
 	$(evaluate-test)
 
 $(objpfx)tst-rtld-load-self.out: tst-rtld-load-self.sh $(objpfx)ld.so
diff --git a/grp/Makefile b/grp/Makefile
index 34fceb628f..9d1dae91db 100644
--- a/grp/Makefile
+++ b/grp/Makefile
@@ -59,7 +59,7 @@ ifeq ($(run-built-tests),yes)
 # tst_fgetgrent currently only works with shared libraries
 ifeq (yes,$(build-shared))
 $(objpfx)tst_fgetgrent.out: tst_fgetgrent.sh $(objpfx)tst_fgetgrent
-	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' > $@; \
+	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)'; \
 	$(evaluate-test)
 
 endif
diff --git a/intl/Makefile b/intl/Makefile
index ce3072420f..3195cb54ad 100644
--- a/intl/Makefile
+++ b/intl/Makefile
@@ -83,22 +83,22 @@ $(objpfx)mtrace-tst-gettext.out: $(objpfx)tst-gettext.out
 $(objpfx)tst-gettext.out: tst-gettext.sh $(objpfx)tst-gettext
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \
 	  '$(run-program-env)' '$(test-program-prefix-after-env)' \
-	  $(common-objpfx)intl/ $(objpfx)tst-gettext.mtrace > $@; \
+	  $(common-objpfx)intl/ $(objpfx)tst-gettext.mtrace; \
 	$(evaluate-test)
 $(objpfx)tst-translit.out: tst-translit.sh $(objpfx)tst-translit
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' \
-	  $(common-objpfx)intl/ > $@; \
+	  $(common-objpfx)intl/; \
 	$(evaluate-test)
 $(objpfx)tst-gettext2.out: tst-gettext2.sh $(objpfx)tst-gettext2
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \
 	  '$(run-program-env)' '$(test-program-prefix-after-env)' \
-	  $(common-objpfx)intl/ > $@; \
+	  $(common-objpfx)intl/; \
 	$(evaluate-test)
 $(objpfx)tst-gettext4.out: tst-gettext4.sh $(objpfx)tst-gettext4
-	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(common-objpfx)intl/ > $@; \
+	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(common-objpfx)intl/; \
 	$(evaluate-test)
 $(objpfx)tst-gettext6.out: tst-gettext6.sh $(objpfx)tst-gettext6
-	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(common-objpfx)intl/ > $@; \
+	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(common-objpfx)intl/; \
 	$(evaluate-test)
 
 $(objpfx)tst-codeset.out: $(codeset_mo)
diff --git a/libio/Makefile b/libio/Makefile
index 4a344d686d..d732e2c340 100644
--- a/libio/Makefile
+++ b/libio/Makefile
@@ -227,7 +227,7 @@ endif
 
 $(objpfx)test-freopen.out: test-freopen.sh $(objpfx)test-freopen
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)'	\
-	$(common-objpfx)libio/ > $@; \
+	$(common-objpfx)libio/; \
 	$(evaluate-test)
 
 $(objpfx)tst-fopenloc-cmp.out: ../iconvdata/testdata/ISO-8859-1..UTF8 \
diff --git a/localedata/Makefile b/localedata/Makefile
index ccfcb0049f..a2854e03f3 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -361,13 +361,13 @@ $(objpfx)tst-trans.out: tst-trans.sh $(objpfx)tst-trans \
 	$(SHELL) $< $(common-objpfx) '$(run-program-prefix-before-env)' \
 		 '$(run-program-env)' '$(run-program-prefix-after-env)' \
 		 '$(test-program-prefix-before-env)' \
-		 '$(test-program-prefix-after-env)' > $@; \
+		 '$(test-program-prefix-after-env)'; \
 	$(evaluate-test)
 $(objpfx)tst-ctype.out: tst-ctype.sh $(objpfx)tst-ctype \
 			$(objpfx)sort-test.out \
 			$(addprefix $(objpfx),$(CTYPE_FILES))
 	$(SHELL) $< $(common-objpfx) '$(test-program-cmd-before-env)' \
-		 '$(run-program-env)' '$(test-program-cmd-after-env)' > $@; \
+		 '$(run-program-env)' '$(test-program-cmd-after-env)'; \
 	$(evaluate-test)
 $(objpfx)tst-langinfo-newlocale.out: tst-langinfo.sh \
 			$(objpfx)tst-langinfo-newlocale \
diff --git a/malloc/Makefile b/malloc/Makefile
index 09ae63bee5..ab64dcfd73 100644
--- a/malloc/Makefile
+++ b/malloc/Makefile
@@ -185,7 +185,7 @@ ifeq (yes,$(build-shared))
 ifneq ($(PERL),no)
 $(objpfx)tst-mtrace.out: tst-mtrace.sh $(objpfx)tst-mtrace
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \
-		 '$(run-program-env)' '$(test-program-prefix-after-env)' > $@; \
+		 '$(run-program-env)' '$(test-program-prefix-after-env)'; \
 	$(evaluate-test)
 endif
 endif
diff --git a/nptl/Makefile b/nptl/Makefile
index b30d263ca4..d47e8a81d9 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -518,7 +518,7 @@ $(objpfx)tst-tls6.out: tst-tls6.sh $(objpfx)tst-tls5 \
 		       $(objpfx)tst-tls5modc.so $(objpfx)tst-tls5modd.so \
 		       $(objpfx)tst-tls5mode.so $(objpfx)tst-tls5modf.so
 	$(BASH) $< $(common-objpfx) '$(test-via-rtld-prefix)' \
-	  '$(test-wrapper-env)' '$(run-program-env)' > $@; \
+	  '$(test-wrapper-env)' '$(run-program-env)'; \
 	$(evaluate-test)
 endif
 
diff --git a/posix/Makefile b/posix/Makefile
index 19a890742a..1cc214dec7 100644
--- a/posix/Makefile
+++ b/posix/Makefile
@@ -164,11 +164,11 @@ ifeq ($(run-built-tests),yes)
 ifeq (yes,$(build-shared))
 $(objpfx)globtest.out: globtest.sh $(objpfx)globtest
 	$(SHELL) $< $(common-objpfx) '$(test-via-rtld-prefix)' \
-		'$(test-program-prefix)' '$(test-wrapper-env)' > $@; \
+		'$(test-program-prefix)' '$(test-wrapper-env)'; \
 	$(evaluate-test)
 $(objpfx)wordexp-tst.out: wordexp-tst.sh $(objpfx)wordexp-test
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \
-		 '$(run-program-env)' '$(test-program-prefix-after-env)' > $@; \
+		 '$(run-program-env)' '$(test-program-prefix-after-env)'; \
 	$(evaluate-test)
 endif
 
@@ -354,7 +354,7 @@ $(objpfx)tst-boost-mem.out: $(objpfx)tst-boost.out
 	$(evaluate-test)
 
 $(objpfx)tst-getconf.out: tst-getconf.sh $(objpfx)getconf
-	$(SHELL) $< $(common-objpfx) '$(built-program-cmd)' > $@; \
+	$(SHELL) $< $(common-objpfx) '$(built-program-cmd)'; \
 	$(evaluate-test)
 
 $(objpfx)bug-ga2-mem.out: $(objpfx)bug-ga2.out
diff --git a/stdio-common/Makefile b/stdio-common/Makefile
index eff0c98d82..686f92a0f3 100644
--- a/stdio-common/Makefile
+++ b/stdio-common/Makefile
@@ -121,11 +121,11 @@ tst-printf-fp-leak-ENV = \
   MALLOC_TRACE=$(objpfx)tst-printf-fp-leak.mtrace
 
 $(objpfx)tst-unbputc.out: tst-unbputc.sh $(objpfx)tst-unbputc
-	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' > $@; \
+	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)'; \
 	$(evaluate-test)
 
 $(objpfx)tst-printf.out: tst-printf.sh $(objpfx)tst-printf
-	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)' > $@; \
+	$(SHELL) $< $(common-objpfx) '$(test-program-prefix)'; \
 	$(evaluate-test)
 
 $(objpfx)tst-printfsz-islongdouble.out: \
diff --git a/stdlib/Makefile b/stdlib/Makefile
index 4615f6dfe7..f8a1660186 100644
--- a/stdlib/Makefile
+++ b/stdlib/Makefile
@@ -208,7 +208,7 @@ $(objpfx)isomac: isomac.c
 $(objpfx)tst-fmtmsg.out: tst-fmtmsg.sh $(objpfx)tst-fmtmsg
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \
 		 '$(run-program-env)' '$(test-program-prefix-after-env)' \
-		 $(common-objpfx)stdlib/ > $@; \
+		 $(common-objpfx)stdlib/; \
 	$(evaluate-test)
 
 $(objpfx)tst-putenv: $(objpfx)tst-putenvmod.so
@@ -239,7 +239,7 @@ $(objpfx)tst-tls-atexit-nodelete.out: $(objpfx)tst-tls-atexit-lib.so
 $(objpfx)tst-setcontext3.out: tst-setcontext3.sh $(objpfx)tst-setcontext3
 	$(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \
 		 '$(run-program-env)' '$(test-program-prefix-after-env)' \
-		 $(common-objpfx)stdlib/ > $@; \
+		 $(common-objpfx)stdlib/; \
 	$(evaluate-test)
 
 $(objpfx)tst-makecontext: $(libdl)
