Aqui está a versão adaptada para esta tarefa:
D=$(readlink -f "2"); (cd "1" && find . -type f -print0 | cpio --pass-through --null --link --make-directories "$D") && rm -Rf 1
Depois desse comando, eu tenho exatamente o que eu queria:
$ find 1 2 -printf '%i %p\n'
find: '1': No such file or directory
40011806 2
40011450 2/t
40011458 2/y
40011924 2/a
40011217 2/a/q
40014006 2/a/e
40013945 2/a/w
Leia notas sobre o uso na resposta original (vinculadas acima).