#!/bin/bash -x
echo "Enter file name: "
read fileName
fileName=`pwd`"/$fileName"
if [ -f $fileName ]; then
echo "file is present"
fi
Même si je change la valeur de fileName en ajoutant des guillemets au début et à la fin .. Le script ne fonctionne toujours pas.Comment faire fonctionner ce script bash si la variable "fileName" contient de l'espace?
Utilisez: 'fileName = $ (pwd) /" $ fileName "' ou même 'fileName =" $ PWD/$ nomFichier "'; alors vous avez juste besoin de vous soucier de l'utilisateur en tapant/dev/null plutôt que d'un nom par rapport au répertoire en cours (peut-être aussi, l'utilisateur tapant ../../../../../../etc/passwd). Dernier point: les middleCapitals ont l'air vraiment bizarre dans un script shell. –
ya .. mieux vaut utiliser la variable d'environnement. :) –