#!/bin/bash SED=$( while IFS=$'\t' read -r -a myArray do echo -ne "s_"${myArray[0]}"_"${myArray[1]}"_g;\n" done < replacements ) echo sed -e "$SED" cat $1 | sed -e "$SED" | sed -z 's_-\n__g'> $2