Linux, Shuf: il comando UNIX che sta facendo impazzire la rete
In questi giorni spopolano i Meme riguardanti il comando Unix shuf
shuf
permette, tra le altre cose, di effettuare delle permutazioni casuali delle righe di un file e restituisce il risultato nello standard output del vostro terminale. Come funziona? Supponiamo di creare un file di testo test.txt
e di scriverci quattro nomi. Dando il comando- shuf test.txt
verranno stampati i quattro nomi in ordine casuale. Ecco un esempio:
Shuf permette anche di scegliere una linea casuale dal file usando l’opzione -n
. Questo limita l’output al numero specificato
shuf -n 1 test.txt
L’opzione -e
permette la permutazione dallo standard input:
shuf -e uno due tre
Se dovete decidere chi guida al sabato sera in modo del tutto casuale sapete come fare:
shuf -e Marco Matteo Luca Federico
Inoltre shuf
permette di:
- Randomizzare le righe di un file
shuf filename
- Ottenere in output solo cinque righe
shuf -n 5 filename
- Scrivere l’output su un altro file
shuf filename -o output_filename
- Generare un numero random in un range
shuf -i 1-10
Su Ubuntu dovrebbe essere installato di default, altrimenti date
- apt-get install coreutils
Per ulteriori dettagli su questo comando vi rimando alla relativa pagina del manuale.
Shuf fa impazzire il Web
Avete notato decine di meme su shuf
in questi giorni? Tutto nasce da un post su StackOverflow di qualche anno fa a cui nessuno aveva fatto caso. Un utente chiede come effettuare mediante uno script Bash la permutazione di N righe di un file. Un altro utente gli risponde consigliandogli di usare shuf:
shuf -n N input > output
Un terzo utente, Ash, sotto questa risposta ha commentato dicendo che con shuf è riuscito a permutare in un minuto un file costituito da 78 miliardi di righe. In realtà il numero riportato da Ash pare poco veritiero, anche se il tempo impiegato dipende strettamente dall’hardware della macchina. A titolo informativo alcune prove con un iMac di qualche anno fa hanno portato a gestire 10 milioni di righe al secondo, quindi 600M al minuto, che è ben lungi da 78 miliardi.
Qualcuno di Programmer Humor ha notato questa risposta e il seguito potete immaginarlo. Su Reddit il primo meme ha oltre 21 mila like:
Ovviamente Google Trends ha registrato un picco nelle ricerche:
E i meme si sprecano:
Ve ne condivido qualcuno anche sul nostro canale Telegram e sulla pagina Facebook del blog😉😉😉
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.