Establecer un argumento con bash
Con frecuencia ejecuto un simple comando bash:
rpm -Uvh --define "_transaction_color 3" myPackage.rpm
que funciona correctamente.
Pero ahora estoy intentando crear un script en un archivo bash y hacerlo más flexible:
#!/bin/bash
INSTALL_CMD=rpm
INSTALL_OPT="-Uvh --define '_transaction_color 3'"
${INSTALL_CMD} ${INSTALL_OPT} myPackage.rpm
Sin embargo, esto sigue generando el error:
error: Macro % has illegal name (%define)
El error viene de como--define
y el citado_transaction_color
es manejado.
He intentado una variedad de fugas, diferentes frases, incluso haciendoINSTALL_OPT
una matriz, manejada con${INSTALL_OPT[@]}
.
Hasta ahora, mis intentos no han funcionado.
Claramente, lo que quiero es extremadamente simple. Simplemente no estoy seguro de cómo lograrlo.
¿Cómo puedo conseguir bash para manejar mi--define
argumento correctamente?