Necesito eliminar las primeras 42 líneas de un volcado SQL de 2GB.
Sé que puedo ver las primeras líneas usando:
head -n 44 dump.sql
Pero, ¿hay alguna forma de editarlos o eliminarlos?
command-line
Kohjah Breese
fuente
fuente

tail. Encontré muchas veces algo nuevo que aprender de sus respuestas. Gracias.sed -i 1,50000000d 17GigFilecrea un archivo temporalsedXYZque consume muchos más gigabytes. ¿Hay un enfoque sin archivos temporales?tail -n +43yhead -n 44como se menciona en la pregunta?Esto parece ser lo más fácil:
Elimine las líneas 1-42 de test.sql y guárdelas como test2.sql
fuente
prueba esto,
tail -n +43 dump.sql > dump_new.sqlfuente
Puede usar Vim en modo Ex:
1pasar a la primera línea42seleccione 42 líneasdEliminarxguardar y cerrarfuente
Lo siento, no puedo darte el código actual en este momento. Sin embargo, intente mirar algo en la línea de
Lo que esto debería hacer (una vez formateado correctamente) es contar el número de líneas en el archivo (wc -l), restar 44 de él (-44) y luego imprimir todo comenzando con la línea 45 del archivo.
Espero que esto ayude y buena suerte.
fuente
wc -len el archivo, que lo procesa dos veces, mientras quesedotailprocesar una sola vez.Prueba esto,
o,
fuente
Solo para agregar esto. Si está en una Mac, debe agregar la extensión de copia de seguridad. Respuesta de esta publicación .
fuente
Debido a las
seddiscrepancias entre Linux y Mac, decidí usar eltail -n +43 dump.sql > dump.sqlformato.fuente