Articles of sed

¿Qué pasa con mi expresión regular anticipada en GNU sed?

Esto es lo que estoy haciendo (ejemplo simplificado): gsed -i -E ‘s/^(?!foo)(.*)$/bar\1/’ file.txt Estoy tratando de poner la bar en frente de cada línea que no comienza con foo . Este es el error: gsed: -e expression #1, char 22: Invalid preceding regular expression ¿Qué pasa?

¿Cómo uso un reemplazo de nueva línea en un BSD sed?

Saludos, ¿cómo hago lo siguiente en BSD sed? sed ‘s/ /\n/g’ Desde la página de manual, indica que \ n será tratado literalmente dentro de una cadena de reemplazo, ¿cómo puedo evitar este comportamiento? ¿Hay un alterno? Estoy usando Mac OS Snow Leopard, puedo instalar fink para obtener GNU sed.

Cómo reemplazar la enésima aparición de una cadena usando sed

¿Hay alguna manera de reemplazar la enésima ocurrencia de una cadena en un archivo usando sed? Estoy usando sed -i ‘0,/jack.*/ s//jill/’ para reemplazar la primera ocurrencia. ¿Cómo puedo cambiarlo para que reemplace la enésima aparición? Mi archivo contiene las siguientes líneas: first line second line third line jack=1 fifth line jack= seventh line No […]

reemplazar una cadena desconocida entre dos cadenas conocidas con sed

Tengo un archivo con los siguientes contenidos: WORD1 WORD2 WORD3 ¿Cómo puedo usar sed para reemplazar la cadena entre WORD1 y WORD3 con foo , de modo que el contenido del archivo cambie a lo siguiente ?: WORD1 foo WORD3 Intenté lo siguiente, pero obviamente me falta algo porque eso no produce los resultados deseados: […]

Eliminar línea si el campo está duplicado

Buscando un awk (o sed) de una línea para eliminar las líneas de la salida si el primer campo es un duplicado. Un ejemplo para eliminar líneas duplicadas que he visto es: awk ‘a !~ $0; {a=$0}’ Intenté usarlo por una base sin suerte (pensé que cambiar los $ 0 a $ 1 haría el […]

Haz una cola -F hasta que coincida con un patrón

Quiero hacer una cola -F en un archivo hasta que coincida con un patrón. Encontré una forma de usar awk, pero en mi humilde opinión mi comando no está realmente limpio. El problema es que necesito hacerlo en una sola línea, debido a algunas limitaciones. tail -n +0 -F /tmp/foo | \ awk -W interactive […]

Eliminar todo el texto antes del colon

Tengo un archivo que contiene una cierta cantidad de líneas. Cada línea se ve así: TF_list_to_test10004/Nus_k0.345_t0.1_e0.1.adj:PKMYT1 Me gustaría eliminar todo el carácter anterior a “:” para retener solo PKMYT1 que es un nombre de gen. Como no soy un experto en scripting regex, ¿alguien puede ayudarme a hacer esto usando Unix (sed o awk) o […]

código de comando inválido., a pesar de los períodos de escape, usando sed

Estar obligado a usar CVS para un cliente actual y cambiar la dirección para el repository remoto. La única forma en que puedo encontrar para cambiar la dirección remota en mi código local es buscar y reemplazar recursivamente. Sin embargo, con el comando sed espero trabajar: find ./ -type f -exec sed -i “s/192.168.20.1/new.domain.com/” {} […]

¿Cuál es la diferencia entre sed y awk?

¿Cuál es la diferencia entre awk y sed? ¿Qué tipo de aplicación son los mejores casos de uso para las herramientas sed y awk?

Cómo usar una variable de script bash con sed

Ejecuto el siguiente script bash: #!/bin/bash version=$1 echo $version sed ‘s/\${version.number}/$version/’ template.txt > readme.txt Estoy esperando reemplazar todas las instancias de $ {version.number} con los contenidos de la variable “versión”. En su lugar, se está insertando la versión $ del texto literal. ¿Qué debo hacer para que sed use el valor actual de $ version?