On Tue, Jan 29, 2013 at 12:56:58PM +0100, Joachim Schmitz wrote: > John Keeping wrote: > > Currently I'm extracting the command word using: > > > > cmd=$(eval -- "set -- $(git config mergetool.$tool.cmd); echo > > \"$1\"") > > Shouldnt this work? > cmd=$((git config "mergetool.$tool.cmd" || git config "difftool.$tool.cmd") > | awk '{print $1}') That doesn't handle paths with spaces in, whereas the eval in a subshell does: $ cmd='"my command" $BASE $LOCAL $REMOTE' $ echo "$cmd" | awk '{print $1}' "my $ ( eval -- "set -- $cmd; echo \"\$1\"" ) my command John -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html