Você pode canalizar para xargs
e usar grep -Il ""
para filtrar arquivos binários:
git diff --diff-filter=AM --ignore-submodules --name-only HEAD^ | \
xargs grep -Il ""
Exemplo de comando git openfiles
#!/bin/bash
git show --stat HEAD
files=($(git diff --diff-filter=AM --ignore-submodules --name-only HEAD^ | xargs grep -Il ""))
read -p "Open ${#files[@]} files in Vim tabs? (Y/n)" -n 1 -r
if [[ -z $REPLY || $REPLY =~ [Yy] ]]; then
exec vim -p ${files[@]}
else
exit 1
fi