echo $PATH | while read -d : p; do
[ -e "$p"/"$name" ] && { name="$p"/"$name"; break; }
done
как известно в конвейерах все команды запускаются в порожденных интерпретаторах
возможно я не совсем правильно ищу файл
но все-таки такой вопрос возникал у меня раньше и на других примерах