2013-03-20 4 views

risposta

10

ne dite:

echo "He likes cats, really?" | fold -w1 | sort -u 
0

È possibile utilizzare sed come segue:

sed 's/./\0\n/g' input.txt | sort -u 
+0

Perché caratteri non vengono sostituiti con null + nuova linea? Voglio dire che sono ancora lì. Invece di '\ 0' si può anche usare' & 'che è coperto nel manuale sed. '&' fa riferimento allo porzione intera dello spazio del motivo. Funziona allo stesso modo: 'sed 's /./& \ n/g' input.txt | ordina -u' – siulkilulki

3

Un modo utilizzando grep -o . di mettere ogni personaggio su una nuova riga e sort -u per rimuovere i duplicati:

$ grep -o . file | sort -u 

O una soluzione che non richiede sort -u o più comandi scritti esclusivamente in awk:

$ awk '{for(i=1;i<=NF;i++)if(!a[$i]++)print $i}' FS="" file 
0

Un modo awk:

awk '{$1=$1}1' FS="" OFS="\n" file | sort -u 
Problemi correlati