inputs (308B)
1 #!/bin/zsh 2 : ${delim:=---} 3 cmd=$1 4 inputs=( "$(mktemp)" ) 5 while IFS= read line; do 6 if [[ $line == $delim ]]; then 7 inputs+=( "$(mktemp)" ) 8 else 9 printf '%s\n' $line >>$inputs[-1] 10 fi 11 done 12 13 for n in $(seq 1 $#inputs); do 14 cmd=${cmd//@${n}@/${(qqq)inputs[$n]}} 15 done 16 17 eval $cmd 18 ret=$? 19 20 rm $inputs 21 22 exit $ret