Digamos que tengo un script haciendo:
some-command "$var1" "$var2" ...
Y, en el caso de que var1
esté vacío, prefiero que se reemplace con nada en lugar de la cadena vacía, para que el comando ejecutado sea:
some-command "$var2" ...
y no:
some-command '' "$var2" ...
¿Hay una manera más simple que probar la variable e incluirla condicionalmente?
if [ -n "$1" ]; then
some-command "$var1" "$var2" ...
# or some variant using arrays to build the command
# args+=("$var1")
else
some-command "$var2" ...
fi
¿Hay una sustitución de parámetros que puede expandirse a nada en bash, zsh o similares? Es posible que todavía quiera usar globbing en el resto de los argumentos, por lo que deshabilitar eso y desarmar la variable no es una opción.
man
página? (-;