Skip to content

Instantly share code, notes, and snippets.

@pr00thmatic
Created May 1, 2016 14:27
Show Gist options
  • Save pr00thmatic/1824d2cd00e2acd2915cd0196ade9247 to your computer and use it in GitHub Desktop.
Save pr00thmatic/1824d2cd00e2acd2915cd0196ade9247 to your computer and use it in GitHub Desktop.
#!/bin/bash
# INCORRECTO
# esto es lo primero que intenté, pero estaba leyendo los argumentos
# como si fueran una palabra, como encerrados entre comillas D:
# eso es malo! pdfjam -h mostrará que acepta los nombres de
# varios pdfs que unirá, así que creerá que toda la lista de
# argumentos que le pasé es el nombre de un archivo pdf D:
echo "INCORRECTO:"
args="a b c"
./pass-arguments.sh "$args"
# CORRECTO
echo "CORRECTO:";
./pass-arguments.sh a b c;
# ---------------
echo "INCORRECTO:"
args="";
for i in $(seq 1 10); do
args+=$i;
# el error persiste aunque estén separados por un espacio:
# args+=$i" ";
done
./pass-arguments.sh "$args";
# En vez de eso, se guardan los parámetros en un array,
# y este array se pasa como parámetro al script con ${args[@]}
echo "CORRECTO:"
args=();
for i in $(seq 1 10); do
args[$i]=$i;
done
./pass-arguments.sh "${args[@]}";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment