2011-03-21 30 views
7

Estoy trabajando con un archivo CSV que apenas mide 1 GB. Quiero ver la estructura del archivo y una muestra de los datos, pero no quiero abrir todo el archivo. ¿Cómo puedo cargar las primeras filas en Vim? Si hace una diferencia, estoy usando MacVim.Abra solo las primeras líneas de un archivo en Vim

+0

http://www.vim.org/scripts/script.php?script_id=1506 – akira

Respuesta

14

Generalmente utilizo un comando como head o tail para ver el contenido parcial de archivos grandes.

$head -10 <large file> 
+0

Exactamente lo que necesito. ¡Gracias! –

+0

Usaré 'head' y/o' tail' para limitar las líneas, luego pipe para ver usando algo como 'head -1000 FILE | cola -100 | ver -' para tomar las líneas 900-1000 de un archivo. Ocasionalmente recibimos archivos de registro de más de 1GB, por lo que reducirlos antes de abrirlos es importante. –

2

Si solo desea obtener una vista previa y no editar el archivo, puede simplemente usar el comando less o more (ver comentario a continuación). Puede usar la barra espaciadora e ingresar para leer más del archivo, y q para salir.

+2

Originalmente había una aplicación llamada 'more', que se reemplaza en muchos sistemas por [' less'] (http: //www.greenwoodsoftware.com/less/faq.html#what) ahora. En Mac OS, 'más' en realidad apunta a' menos'. Son similares, solo 'menos' tiene una mejor navegación, y puede desplazarse hacia atrás, entre otras cosas. –

11

Si debe hacerlo desde vim, utilice esto:

:r !head -10 path/to/big.file 

Eso ayudaría a las primeras 10 líneas de big.file e insertarlos en el búfer en uso.

0
$ vim '+%!head -10' FILE 

lo que hace que está abierto el archivo, a continuación, ejecutar :%!head -10, que las tuberías a través de toda la memoria intermedia head -10 y reemplaza el contenido de la memoria intermedia con la salida del head.

Tenga en cuenta las citas, por cierto.

+3

Si vim abre un archivo de 1GB, ¿no va a tomar mucho tiempo antes de que tenga el búfer abierto para que pueda pasarlo por la cabeza? Parece que sería mucho más rápido usar 'head -10 FILE | vim -' o haz lo que El Isra sugirió. –

Cuestiones relacionadas