Comment fonctionnent les variables d'environnement sur bash lorsqu'elles ne sont pas définies, dans l'exemple ci-dessous, je voulais supprimer un répertoire Linux que je pensais avoir déjà défini mais parce que je n'ai pas défini les variables, l'opération va être exécutée sur tout, je voudrais de l'aide pour comprendre comment ça marche? et comment je peux éviter cela?Comportement des variables d'environnement Linux
[email protected]:~$ sudo rm -rf $I_HOME/$I_VERSION/
rm: it is dangerous to operate recursively on ‘//’ (same as ‘/’)
rm: use --no-preserve-root to override this failsafe
En relation: [Quel est un moyen concis de vérifier que les variables d'environnement sont définies dans Unix shellscript] (http://stackoverflow.com/questions/307503/whats-a-concise-way-to-check-that-environment- variables-sont-set-dans-unix-shellsc). Vous pouvez simplement taper 'set -u' si vous voulez qu'il vérifie toujours les vars unset. –
'set -u' vérifie toujours les variables non définies. Si vous avez seulement besoin de ces 2 variables, vous pouvez utiliser 'rm -rf $ {I_HOME:? Veuillez définir la valeur}/$ {I_VERSION:? Quelle est la version?} /'. – alvits
S'il vous plaît jeter un oeil à: [Que dois-je faire quand quelqu'un répond à ma question?] (Http://stackoverflow.com/help/someone-answers) – Cyrus