Imagen de AgD
+1
+1
-1

Haciendo uso de GTK (GNOME), QT (KDE) o cualquier otra biblioteca para generar entornos gráficos. Si quieres algo muy simple, pero que puedas invocar fácilmente desde consola, puedes usar zenity:

agd@agd-desktop $ zenity --title="XUL Automator" --entry --text="Nombre directorio" --entry-text="Archivo" 
+1
+1
-1

make install . es
Noticias, apuntes y pequeños tutoriales sobre GNU/Linux
Imagen de AgD
+1
+1
-1

Tan solo debes de proteger las comillas con el carácter \. Ejemplo:

agd-desktop # echo "Proteger comillas \"comillas protegidas\""
Proteger comillas "comillas protegidas"
agd-desktop # echo "Proteger comillas "comillas no protegidas""
Proteger comillas comillas no protegidas
+1
+1
-1

make install . es
Noticias, apuntes y pequeños tutoriales sobre GNU/Linux
Imagen de AgD
+1
+1
-1

La sintaxis correcta para verificar si una cadena está vacía puede ser:

[ -z $1 ]
[[ -z $1 ]]
[[ $1 = "" ]]

Respecto al script en si, encerrar condicionales dentro de condicionales empeora la legibilidad. Siempre que sea posible, es mejor evitarlo. En tu caso lo podrías hacer, por ejemplo con:

#!/bin/bash
# XUL Helper 0.1.3 (GPL v3)
# ./xul_helper $NOMBRE_DIRECTORIO $NOMBRE_APLICACION
if [ -z $1 ] ; then 
    echo "Falta el parametro Nombre de Directorio"
    echo "Pruebe con $ ./xul_helper DIRECTORIO NOMBRE_APLICACION"
    exit 0
fi
if [ -z $2 ] ; then
     echo Falta el parametro Nombre de la aplicacion
     echo Pruebe con $ ./xul_helper DIRECTORIO NOMBRE_APLICACION
     exit 0
fi

Resto del script

También podrías agrupar las dos salidas

#!/bin/bash
# XUL Helper 0.1.3 (GPL v3)
# ./xul_helper $NOMBRE_DIRECTORIO $NOMBRE_APLICACION
if [[ -z $1 ]] || [[ -z $2 ]] ; then
     echo "Sintaxis incorrecta"
     echo "Recuerdo que la sintaxis debe ser ./xul_helper DIRECTORIO NOMBRE_APLICACION"
     exit 0
fi
Resto del script
+1
+1
-1

make install . es
Noticias, apuntes y pequeños tutoriales sobre GNU/Linux