Je génère une variable bash contenant tous mes arguments et ces arguments contiennent des espaces. Lorsque je lance une commande avec ces arguments - par exemple. ls $args - les guillemets ne sont pas correctement interprétés. Voici un exemple - créant et effaçant également les fichiers nécessaires.
#!/bin/bash
f1="file n1"
f2="file n2"
# create files
touch "$f1" "$f2"
# concatenate arguments
args="\"$f1\" \"$f2\""
# Print arguments, then launch 'ls' command
echo "arguments :" $args
ls $args
# delete files
rm "$f1" "$f2"
Avec cela, j'ai quelques erreurs "no such file" pour "file , n1" , "file and n2"