Un elenco dettagliato di tutte le opzioni richiamabili con le relative funzioni è presenta nella relativa pagina di wikipedia.it, insieme ad alcuni esempi di utilizzo.
In questa sede mi preme mettere in evidenza l'uso come trasferimento di file e dati.
Supponiamo di avere due computer A e B collegati in remoto tramite la rete, di cui si conoscono gli indirizzi IP; supponiamo si voglia trasferire una immagine a basso livello del disco fisso del computer A verso il computer B; supponiamo inoltre che in entrambe le macchine sia presente netcat installato, assieme a dd e bzip2.
Prepariamo intanto la macchina B a ricevere i dati, mettendola in ascolto su una porta libera, ad esempio 19000
$ nc -l 19000 | bzip2 -d | dd bs=1M of=/path/to/file/destinazione.imgIl computer B si aspetta dati in blocchi da 1Mb compressi con bzip2 e li va raggruppare in un file destinazione.img, secondo il percorso indicato.
A questo punto la macchina A può inviare dando il comando
$ dd bs=1M if=/dev/hda | bzip2 -c | nc computerB.dominio.com 19000Esiste anche una versione più aggiornata e complessa, socat, e anche una versione che fa uso della crittografia, cryptcat.
Il sorgente è anche compilabile (ed il relativo eseguibile utilizzabile)su Windows; una build è scaricabile da qui.