#!/bin/bash

# ideone boilerplate: run in temp dir 
t=$(mktemp -d -t ideone.XXXXXXXX) || exit
trap 'rm -rf "$t"' ERR EXIT
cd "$t"

yes one | head -n 10 >base
nl base >1_chr_3.txt
sed s/one/two/ base >2_chr_3.txt
sed s/one/three/ base >3_chr_3.txt
sed s/one/four/ base >4_chr_3.txt

ppaste () {
    case $# in
     1|2) paste -d ' ' "$@";;
     *) local first=$1
        shift
        paste -d ' ' "$first" <(ppaste "$@");;
    esac
}

echo '** plain paste'
paste -d ' ' *_chr_3.txt

echo '** recursive function'
ppaste *_chr_3.txt