J'ai besoin d'un script qui prend un seul argument de ligne de commande qui est un chemin de répertoire. Le script doit vérifier l'argument pour déterminer s'il s'agit en fait d'un répertoire. S'il s'agit d'un répertoire, le script doit changer le mode de protection de tous les sous-répertoires situés à 600. Si l'argument n'est pas un répertoire, un message approprié doit être imprimé.Comment chmod de sous-répertoires d'un chemin fourni (BASH)
Je
si [-d $ 1]; puis
autre
echo "Ce n'est pas un répertoire"
fi
Fondamentalement, je ne sais pas quoi mettre sur la ligne blanche. Je plaisantais avec chmod mais ma ligne semblait vouloir changer le chemin entré et pas seulement les sous-répertoires.
600 est un masque d'autorisation terriblement étrange pour un répertoire - vous manque le bit d'exécution/de recherche, ce qui rend le répertoire plutôt inutile pour tout le monde autre que root. – ephemient