#!/bin/bash -l x=$(mktemp) appendu $x<<'EOF' aa bb EOF y=$(mktemp) tee -a $y<<'EOF' aa bb EOF output="$( appendu $x<<'EOF' cc aa caa bb dd EOF )" good_output='cc caa dd' [[ $output == "$good_output" ]] || { echo check1 failed; echo "$output != $good_output"; } echo "$good_output" >> $y diff $x $y || echo check2 failed diffing $x and $y output=$(appendu $x "aa ee" "bb") good_output="aa ee" [[ $output == $good_output ]] || { echo check3 failed; echo "$output != $good_output"; }