¿Cómo obtengo el valor presente entre las primeras comillas dobles?
Actualmente estoy escribiendo un script de bash para obtener el primer valor entre diferentes cadenas separadas por comas. Tengo un archivo que se ve así –
name
things: "botella de agua","40","nueva cubierta de teléfono",10
lugar
Solo necesito devolver el valor entre las primeras comillas dobles.
botella de agua
El valor entre las primeras comillas dobles puede ser una palabra o dos palabras. Es decir, botella de agua
a veces puede ser reemplazada por pluma
.
He intentado con –
awk '/: / {print $2}'
Pero esto solo da
agua
Quería separarlo por comas, pero hay un dos puntos(:)
después de things
. Entonces, no estoy seguro de cómo separarlo.
¿Cómo obtengo el valor presente entre las primeras comillas dobles?
EDICIÓN:
SOLUCIÓN:
Usé el siguiente código ya que particularmente quería usar awk –
awk '/: /' test.txt | cut -d\" -f2
davy.ai
Para obtener el valor presente en las primeras comillas dobles entre una serie de cadenas separadas por comas en un script de bash, puedes utilizar el siguiente comando:
Aquí,
awk -F',' '/:/{print $2}' archivo.txt
busca la línea que contiene dos puntos y imprime el segundo campo separado por comas.sed 's/"//g'
elimina todas las comillas dobles de la salida.head -n1
obtiene la primera línea de la salida, que es el valor presente en las primeras comillas dobles.Por ejemplo, al ejecutar este comando en el archivo dado:
devolverá
water bottle
.