Parece funcionar para mim, embora dependa da versão do netcat. O Debian empacotou dois: " netcat-traditional " e " netcat-openbsd ". O primeiro suporta -e
no modo cliente e servidor, o último não suporta nada.
$ nc.traditional localhost 1234 -e /bin/bash
$ nc.openbsd localhost 1234 -e /bin/bash
nc.openbsd: invalid option -- 'e'
O do meu OSX também não é compatível.
Se você precisa fazer isso com um netcat que não suporta -e
, você pode precisar de algo assim: Como fazer tubo bidirecional entre dois programas?