Tengo un archivo de texto de ~ 1 GB con aproximadamente 6k filas (cada fila es muy larga) y necesito mezclar aleatoriamente sus filas. ¿Es posible? Posiblemente con awk?
macos
awk
text-editing
ddmichael
fuente
fuente
brew install coreutils
y usar/usr/local/bin/gshuf
.cat myfile | perl -MList::Util=shuffle -e 'print shuffle(<STDIN>);'
Sin embargo, estoy seguro de lo rápido que funcionaríaPython one-liner:
Lee todas las líneas de la entrada estándar, las baraja en el lugar, luego las imprime sin agregar una nueva línea final (observe la
,
desde el final).fuente
Para OSX se llama al binario
gshuf
.fuente
Si, como yo, viniste aquí para buscar una alternativa
shuf
para macOS, úsalarandomize-lines
.Instale el
randomize-lines
paquete (homebrew), que tiene unrl
comando que tiene una funcionalidad similar ashuf
.brew install randomize-lines
fuente
Olvidé dónde encontré esto, pero aquí está lo
shuffle.pl
que uso:fuente
Al menos en ubuntu, hay un programa llamado
shuf
fuente