AlmuHS/Pendrive_Reminder

Error al instalar: "Demasiados argumentos"

Opened this issue · 8 comments

Sistema Debian "stable" / shell ZSH

Al ejecutar el instalador falla al realizar el test de la distribución con el siguiente mensaje:

➜  Pendrive_Reminder git:(master) sudo ./installer.sh 
[sudo] password for lendulado: 
./installer.sh: línea 26: test: demasiados argumentos
./installer.sh: línea 26: test: demasiados argumentos

Esa línea toma como entrada el siguiente comando cat /etc/os-release | grep ID | cut -d = -f 2
Es posible que, en tu caso, ese comando devuelva como resultado varias palabras, y por tanto lo tome como 2 cadenas en vez de una.

¿podrías ejecutar el comando y decirme que salida te muestra?

La salida muestra "9" debian, parece que coge los valores de ID y VERSION_ID, leyendo la página del manual de os-release hay varias variables que contienen "ID"

Mira el contenido de /etc/os-release, y dime que campos aparecen en él

PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

Vale, pues ahí está el problema. Entonces habrá que usar una expresión regular para que únicamente tome el campo "ID", y no todos los campos que contengan esa cadena

He añadido una corrección al instalador, para que solo busque las lineas que comiencen con ID.
Pruébalo ahora

https://github.com/AlmuHS/Pendrive_Reminder/blob/master/installer.sh

Ya funciona el instalador

He mejorado la corrección para que solo busque "ID=" (por si existiera algún campo que fuera ID[algo]