fetch() { path=$1 name=$2 rm -rf $name cp -r $path $name } while read name path; do eval "name=$name" # re-evaluate the string as a path eval "path=$path" # re-evaluate the string as a path fetch $path $name done