Supongamos que tengo un archivo con líneas
aaa = bbb
Ahora me gustaría reemplazarlos con:
aaa = xxx
Puedo hacer eso de la siguiente manera:
sed "s / aaa = bbb / aaa = xxx / g"
Ahora tengo un archivo con algunas líneas de la siguiente manera:
aaa = bbb aaa = ccc aaa = ddd aaa = [algo más]
¿Cómo puedo reemplazar todas estas líneas aaa=[something]con el aaa=xxxuso de sed ?

[something else]el texto literal, o es solo un marcador de posición? ¿Cuál es el formato posible de la cosa después del signo igual?Respuestas:
Prueba esto:
fuente
.*.greemplace todas las instancias de regexp con reemplazoTambién puede usar la línea de cambio de sed para lograr esto:
Esto pasará y encontrará cualquier línea que pase la
aaa=prueba, lo que significa que la línea contiene las letrasaaa=. Luego reemplaza toda la línea con aaa = xxx. Puede agregar un^al comienzo de la prueba para asegurarse de que solo obtiene las líneas que comienzanaaa=pero eso depende de usted.fuente
seddebecir seguido de una barra diagonal inversa y una nueva línea, y no agrega una nueva línea al texto insertado, pero puede usar, por ejemplo$'/aaa=/c\\\naaa=xxx\n'.Me gusta esto:
Si desea garantizar que
aaa=esté al comienzo de la línea, hágalo:fuente
sed 's/aaa=.*/aaa=\'xxx\'/'pero eso abre un>mensaje en una nueva línea ...Si desea utilizar,
awkentonces esto también funcionaríafuente
fuente
Esto podría funcionar para usted:
fuente
bbb,cccydddes bastante lo que el PO tenía en mente.