¿Cómo puedo obtener las 10 primeras líneas de todos mis archivos comprimidos? -- bash campo con unix campo con zsh campo con bz2 camp Relacionados El problema

How can I get the 10 first lines of all my compressed files?


1
vote

problema

Español

Tengo un montón de archivos M6 , desde los cuales quiero extraer las primeras líneas N7 (de cada uno ). Mis archivos se comprimen en BZ2. De lo contrario, hacer head -10 * sería suficiente.

EX: Supongamos que quiero extraer las 2 primeras líneas de todos mis archivos (A.TXT, B.TXT, C.TXT debajo).

a.txt:

  1A 2A 3A 4A   

b.txt:

  Widget build(BuildContext context) {   return Scaffold(     appBar: AppBar(       title: Text('Content'),     ),     body: FutureBuilder<String>(       future: downloadRequest(),         builder: (BuildContext context, AsyncSnapshot<String> snapshot)         {           if(snapshot.hasData)           {             if(arguments["file_type"] == "video/mp4")             {               _controller = VideoPlayerController.file(new File(snapshot.data));                _initializeVideoPlayerFuture = _controller.initialize();                _initializeVideoPlayerFuture.whenComplete(() => buildVideo());             }             else             {               return Center(                 child:                   Text("Invalid data type")                 );             }           }           else           {             return SizedBox(               child: CircularProgressIndicator(),               width: 60,               height: 60,             );           }         }     ),   ); 0  

c.txt:

  Widget build(BuildContext context) {   return Scaffold(     appBar: AppBar(       title: Text('Content'),     ),     body: FutureBuilder<String>(       future: downloadRequest(),         builder: (BuildContext context, AsyncSnapshot<String> snapshot)         {           if(snapshot.hasData)           {             if(arguments["file_type"] == "video/mp4")             {               _controller = VideoPlayerController.file(new File(snapshot.data));                _initializeVideoPlayerFuture = _controller.initialize();                _initializeVideoPlayerFuture.whenComplete(() => buildVideo());             }             else             {               return Center(                 child:                   Text("Invalid data type")                 );             }           }           else           {             return SizedBox(               child: CircularProgressIndicator(),               width: 60,               height: 60,             );           }         }     ),   ); 111  

El resultado esperado debe ser algo así (es decir, que contenga estas líneas, no se ve obligado a estar en orden):

  Widget build(BuildContext context) {   return Scaffold(     appBar: AppBar(       title: Text('Content'),     ),     body: FutureBuilder<String>(       future: downloadRequest(),         builder: (BuildContext context, AsyncSnapshot<String> snapshot)         {           if(snapshot.hasData)           {             if(arguments["file_type"] == "video/mp4")             {               _controller = VideoPlayerController.file(new File(snapshot.data));                _initializeVideoPlayerFuture = _controller.initialize();                _initializeVideoPlayerFuture.whenComplete(() => buildVideo());             }             else             {               return Center(                 child:                   Text("Invalid data type")                 );             }           }           else           {             return SizedBox(               child: CircularProgressIndicator(),               width: 60,               height: 60,             );           }         }     ),   ); 2  

Probé lo siguiente:

  • Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Content'), ), body: FutureBuilder<String>( future: downloadRequest(), builder: (BuildContext context, AsyncSnapshot<String> snapshot) { if(snapshot.hasData) { if(arguments["file_type"] == "video/mp4") { _controller = VideoPlayerController.file(new File(snapshot.data)); _initializeVideoPlayerFuture = _controller.initialize(); _initializeVideoPlayerFuture.whenComplete(() => buildVideo()); } else { return Center( child: Text("Invalid data type") ); } } else { return SizedBox( child: CircularProgressIndicator(), width: 60, height: 60, ); } } ), ); 3 me da las las primeras 10 líneas de todo el grupo descomprimido de archivos, es decir, no hay suficiente salida. Solo tendría Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Content'), ), body: FutureBuilder<String>( future: downloadRequest(), builder: (BuildContext context, AsyncSnapshot<String> snapshot) { if(snapshot.hasData) { if(arguments["file_type"] == "video/mp4") { _controller = VideoPlayerController.file(new File(snapshot.data)); _initializeVideoPlayerFuture = _controller.initialize(); _initializeVideoPlayerFuture.whenComplete(() => buildVideo()); } else { return Center( child: Text("Invalid data type") ); } } else { return SizedBox( child: CircularProgressIndicator(), width: 60, height: 60, ); } } ), ); 4 aquí.
  • Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Content'), ), body: FutureBuilder<String>( future: downloadRequest(), builder: (BuildContext context, AsyncSnapshot<String> snapshot) { if(snapshot.hasData) { if(arguments["file_type"] == "video/mp4") { _controller = VideoPlayerController.file(new File(snapshot.data)); _initializeVideoPlayerFuture = _controller.initialize(); _initializeVideoPlayerFuture.whenComplete(() => buildVideo()); } else { return Center( child: Text("Invalid data type") ); } } else { return SizedBox( child: CircularProgressIndicator(), width: 60, height: 60, ); } } ), ); 5 me da las primeras 10 líneas de cada archivo comprimido , es decir, es imposible de leer.

¿Alguien tiene una idea?

Original en ingles

I have a bunch of M files, from which I want to extract the first N lines (from each). My files are compressed in BZ2. Otherwise, doing head -10 * would be enough.

Ex: Assume I want to extract the 2 first lines from all my files (A.txt, B.txt, C.txt underneath).

A.txt:

1A 2A 3A 4A 

B.txt:

1B 

C.txt:

1C 2C 

The expected result should be something like that (ie containing these lines, not forced to be in order):

1A 2A 1B 1C 2C 

I tried the following:

  • bzcat * | head -10 gives me the first 10 lines of the whole decompressed bunch of files, ie not enough output. I would have only 1A 2A here.
  • bzcat | head -10 * gives me the first 10 lines of each compressed file, ie it's impossible to read.

Does anyone have an idea?

           

Lista de respuestas

2
 
vote
vote
La mejor respuesta
 

Utilice un String uid = FirebaseAuth.getInstance().getCurrentUser().getUid(); UserModel userModel = new UserModel("john@email,com", "John"); DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); DatabaseReference usersRef = rootRef.child("users"); usersRef.child(uid).setValue(userModel); 5 Loop:

  String uid = FirebaseAuth.getInstance().getCurrentUser().getUid(); UserModel userModel = new UserModel("john@email,com", "John"); DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); DatabaseReference usersRef = rootRef.child("users"); usersRef.child(uid).setValue(userModel); 6  

o String uid = FirebaseAuth.getInstance().getCurrentUser().getUid(); UserModel userModel = new UserModel("john@email,com", "John"); DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); DatabaseReference usersRef = rootRef.child("users"); usersRef.child(uid).setValue(userModel); 7 :

  String uid = FirebaseAuth.getInstance().getCurrentUser().getUid(); UserModel userModel = new UserModel("john@email,com", "John"); DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); DatabaseReference usersRef = rootRef.child("users"); usersRef.child(uid).setValue(userModel); 8  
 

Use a for loop:

for i in *; do bzcat "$i" | head -n10; done 

or find:

find -type f -exec bash -c 'bzcat $1 | head -n10' _ {} \; 
 
 
       
       
0
 
vote

usando Xargs :

  String uid = FirebaseAuth.getInstance().getCurrentUser().getUid(); UserModel userModel = new UserModel("john@email,com", "John"); DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); DatabaseReference usersRef = rootRef.child("users"); usersRef.child(uid).setValue(userModel); 9  

xargs -i reemplazar-str:

Reemplazar ocurrencias de reemplazar-STR en los argumentos iniciales con nombres leídos de entrada estándar. Además, los espacios en blanco no apuntados hacen no terminar los elementos de entrada; en cambio el separador es el carácter de nueva línea.

 

Using xargs :

find . -name "*" | xargs -I {} sh -c "bzcat {} | head -n10" 

xargs -I replace-str :

Replace occurrences of replace-str in the initial-arguments with names read from standard input. Also, unquoted blanks do not terminate input items; instead the separator is the newline character.

 
 

Relacionados problema

0  ¿Cómo elimino los bytestrings dejados de descompresión de una cadena?  ( How do i remove bytestrings left over from decompression from a string ) 
Tengo un montón de cuerdas que son oraciones que se ven algo así: pyinstaller -F -w -n appName —osx-bundle-identifier my.bundle.identifier myScript.py0 ...

1  Límite en la descompresión del archivo BZ2 usando Python?  ( Limit on bz2 file decompression using python ) 
Tengo numerosos archivos que se comprimen en el formato BZ2 y estoy tratando de desconcertarlos en un directorio temporal utilizando Python para luego analiza...

1  ¿Cómo dividir el archivo JSON.BZ2 al azar sin iterar el archivo en Python?  ( How to split json bz2 file randomly without iterating the file in python ) 
Tengo un archivo json.bz2 más de 50 GB de tamaño. Me gustaría dividir el archivo en particiones para ejecutar el proceso en MultiPheads usando Python. ¿Podr...

2  ¿Cómo puedo aumentar el paralelismo con la carga de archivos XML grande con SPROK-XML?  ( How can i increase parallelism with loading large xml file with spark xml ) 
Tengo un archivo XML de tamaño modificado (200 MB, BZ2) que estoy cargando usando Spark-XML en un clúster de AWS EMR con 1 maestro y dos nodos principales, ca...

0  Python: Abra un archivo comprimido BZ2 en la memoria  ( Python open a bz2 compressed file in memory ) 
Hei allí, Sé que se ha preguntado algo similar, pero no pude hacer lo que es el problema en mi caso específico. Quiero descargar un archivo comprimido BZ2, ...

0  Cómo leer un archivo .pgn.bz2 con FREAD IN R?  ( How to read a pgn bz2 file with fread in r ) 
Estoy tratando de leer los archivos de juego de ajedrez desde https://database.lichess.org/ donde Los archivos se almacenan como un BZIP de un PGN. Un forma...

0  Plataforma de destino de consulta para un paquete anaconda  ( Query target platform for an anaconda package ) 
Quiero conocer la plataforma de destino para un paquete ANanconda .Tar.bz2. ¿Hay alguna manera de obtener eso sin explotar el paquete? ...

1  Comprimiendo una gran carpeta con muchos archivos [cerrados]  ( Compressing huge folder with lots of files ) 
cerrado. Esta pregunta no cumple con pautas de desbordamiento de pila . Actualmente no está aceptando respuestas. ...

0  Cómo extraer partes de un volcado PostgreSQL bzipped  ( How to extract parts of a bzipped postgresql dump ) 
Tengo un volcado de formato simple PostgreSQL y solo necesita datos de dos o tres tablas. El vertedero está en formato GZ2. foreach ($productIds as $key =...

0  Acceso a un archivo BZ2 desde S3 API a través de Python  ( Accessing bz2 file from s3 api via python ) 
¿Cómo tire de un archivo TAR ?BZ2 de S3? No puedo resolverlo por la vida de mí. La API se menciona aquí y parece que no puedo configurar mi código correctam...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos