Eu sei que você disse que não quer regexes, mas o '= >' na linha facilita a análise. Mesmo o modo verboso usa isso, então você pode até mesmo passar a saída detalhada através da regex (com alguns ajustes). Eu usei apenas um comando como uma lista de variáveis de loop (para i in ...) para configurar um ambiente chroot.
Então, darei duas maneiras de fazer isso, primeiro com o sed:
ldd /path/to/binary | egrep -v 'linux-vdso|ld-linux-x86-64' | sed 's/.*\=> \(.*\) (.*//'
Ou, você pode tentar analisá-lo em espaços em branco com algo como:
ldd /path/to/binary | egrep -v 'linux-vdso|ld-linux-x86-64' | cut -f 3 -d ' '
Ambos me dão o seguinte:
ldd /bin/ls | egrep -v 'linux-vdso|ld-linux-x86-64' | cut -f 3 -d ' '
/lib/libselinux.so.1
/lib/librt.so.1
/lib/libacl.so.1
/lib/libc.so.6
/lib/libdl.so.2
/lib/libpthread.so.0
/lib/libattr.so.1