Quería hacer grep para palabras clave con comillas dobles dentro. Para dar un ejemplo simple:comillas dobles de escape en grep
echo "member":"time"|grep -e "member\""
Eso no coincide. ¿Como arreglarlo?
Quería hacer grep para palabras clave con comillas dobles dentro. Para dar un ejemplo simple:comillas dobles de escape en grep
echo "member":"time"|grep -e "member\""
Eso no coincide. ¿Como arreglarlo?
El problema es que no se está escapando correctamente la cadena de entrada, intente:
echo "\"member\":\"time\"" |grep -e "member\""
Alternativamente, puede utilizar comillas dobles sin escape entre comillas simples:
echo '"member":"time"' |grep -e 'member"'
Es una cuestión de preferencia que le resulta más claro, aunque el segundo enfoque le impide anidar su comando dentro de otro conjunto de comillas simples (por ejemplo, ssh 'cmd'
).
+1 ¡agradable y simple! – alfasin
¿funcionará? 'echo '" member ":" time "' | grep -e" member "' no testeó – ant
Casi. Necesita ser 'echo' "member": "time" '| grep -e' member "''. Ambos enfoques son válidos, pero prefiero el escape explícito, ya que la intención es más clara. – cmh