# get header from first file and drop it from other files awk 'NR == FNR || FNR > 1' *.tsv > ${output_file} # Add a column for filename and filename column awk -v OFS='\t' 'NR == FNR { print \$0, 'filename' } FNR > 1 { print \$0, FILENAME }'