Problema con paso de parámetro ( ) por consola

Dudas sobre los distintos compiladores C/C++ en Linux
Responder
Mensaje
Autor
ZedGe
Mensajes: 23
Registrado: 03/05/2011 7:13 am

Problema con paso de parámetro ( ) por consola

#1 Mensaje por ZedGe » 01/04/2013 4:10 pm

No se si esto va en esta sección.


Estoy usando getopt
http://www.gnu.org/software/libc/manual ... -of-Getopt.

y necesito pasarle como parámetro a una de las banderas (en este caso la bandera C) un parámetro asi: [cadena(texto)].

Al compilar y ejecutar me lanza este error:

bash: error sintáctico cerca del elemento inesperado `('.


se que podría solucionarlo anteponiendo \ en cada paréntesis, pero no es la idea.

Alguien sabe como solucionar este problema?


EDITO: creo que tendré que usar [ ] o anteponer el \

Avatar de Usuario
_Leo_
Mensajes: 399
Registrado: 20/10/2005 11:00 pm
Ubicación: Buenos Aires, Argentina
Contactar:

#2 Mensaje por _Leo_ » 01/06/2014 5:15 pm

El problema es que el paréntesis (y otros caracteres) tienen significado para el shell en Linux. Por lo tanto necesitás "escapearlo" sí o sí. Ya sea con la barra invertida o poniendo todo entre comillas dobles. Para que el shell no intente interpretarlo. Esto no tiene nada que ver con getopt.

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado