Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

228
Visualizações
¿Cómo acelerar la sustitución cuando se usa GNU sed con GNU find?

Tengo los resultados de una simulación numérica que consta de cientos de directorios; cada directorio contiene millones de archivos de texto.

Necesito sustituir la cadena " wavelength; " por " wavelength_bc; ", así que probé lo siguiente:

 find . -type f -exec sed -i 's/wavelength;/wavelength_bc;/g' {} \;

y

 find . -type f -exec sed -i 's/wavelength;/wavelength_bc;/g' {} +

Desafortunadamente, los comandos anteriores tardan mucho en finalizar (más de 1 hora).

Me pregunto cómo puedo aprovechar la cantidad de núcleos en mi máquina (8) para acelerar el comando anterior.

Estoy pensando en usar xargs con el indicador -P . Tengo miedo de que eso corrompa los archivos; así que no tengo idea si eso es seguro o no?

En resumen:

  • ¿Cómo puedo acelerar las sustituciones de sed cuando uso con find ?
  • ¿Es seguro usar xargs -P para ejecutar eso en paralelo?

Gracias

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

xargs -P debería ser seguro de usar, sin embargo, deberá usar la opción -print0 de find y canalizar a xargs -0 para abordar los nombres de archivo con espacios o comodines:

 find . -type f -print0 | xargs -0 -I {} -P 0 sed -i 's/wavelength;/wavelength_bc;/g' {}

-La opción -P 0 en xargs se ejecutará en modo paralelo. Ejecutará tantos procesos como sea posible para su CPU.

over 4 years ago · Santiago Trujillo Relatório

0

Esto podría funcionar para usted (GNU sed y paralelo):

 find . -type f | parallel -q sed -i 's/wavelength;/wavelength_bc;/g' {}

GNU paralelo ejecutará tantos trabajos como núcleos haya en la máquina en paralelo.

Los usos más sofisticados pueden implicar servidores remotos y transferencia de archivos. Consulte aquí y una hoja de trucos aquí .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda