buscar y reemplazar cadenas en todos los archivos

buscar y reemplazar cadenas en todos los archivos

Me doy cuenta de que esto podría no ser estrictamente una pregunta de LaTeX, pero aun así decidí publicar la pregunta aquí ya que otros podrían tener el mismo problema en ocasiones.

En este momento estoy trabajando en un documento bastante grande que contiene un montón de ecuaciones. En lugar de escribirlos como:

    Q^{h}_{Con} = 0.15 \cdot Q^{h}_{Transm} + ...

Prefiero hacer esto:

\newcommand{\qCon}{Q^{h}_{Con}}
\newcommand{\qTransm}{Q^{h}_{Transm}}
...
\qCon = 0.15 \cdot \qTransm + ...

Ahora bien, no es difícil hacer esto si tienes esa idea cuando empiezas a escribir en un documento. En mi caso sin embargo ya tengo muchas páginas escritas (incluida una nomenclatura). Ahora me gustaría reemplazar todas las menciones de, por ejemplo, $Q^{h}_{Con}$con $\qCon$. Al hacer esto, podría asegurarme de no tener un error tipográfico en alguna parte y obtener un archivo $Q^{h}_{Com}$.

Revisar todos los archivos por su cuenta es demasiado complicado y el editor de texto que estoy usando solo ofrece búsqueda y reemplazo en todos los archivos abiertos. Así que intenté usar la Terminal (en Mac) para hacerlo. Pude usar 'grep' para encontrar todas las instancias de, por ejemplo, $Q^{h}_{Con}$pero no pude encontrar cómo reemplazarlo con $\qCon$.

Alguien tiene una idea?

Respuesta1

algo como

for i in *.tex
do
sed -i -e 's/Q^{h}_{\([a-zA-Z]*\)}/\\q\1 /g' $i
done

Probablemente haga algo. (Guarde una copia de sus archivos primero :-)

información relacionada