Script changement droit
Résolu
yonas108
-
yonas108 -
yonas108 -
Bonjour,
J'aimerais écrire un script linux permettant le changement de droits d'un fichier.
N'ayant que très peu de connaissances, je galère pas mal. Un peu d'aide serait la bienvenue.
Merci à tous,
Yonas108
P.S. Je sais qu'il faut utiliser les instructions ls-l et chmod mais comment les insérer dans un script avec une boucle while ?
J'aimerais écrire un script linux permettant le changement de droits d'un fichier.
N'ayant que très peu de connaissances, je galère pas mal. Un peu d'aide serait la bienvenue.
Merci à tous,
Yonas108
P.S. Je sais qu'il faut utiliser les instructions ls-l et chmod mais comment les insérer dans un script avec une boucle while ?
A voir également:
- Droit script
- Script vidéo youtube - Guide
- Procès-verbal en droit français - Guide
- Remettre ecran droit - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
8 réponses
Bonjour,
je t'invite alors à regarde cette astuce. Un script est dispo en téléchargement, il devrait t'aider dans ta réalisation.
dyllan
je t'invite alors à regarde cette astuce. Un script est dispo en téléchargement, il devrait t'aider dans ta réalisation.
dyllan
En fait je voudrais tester le fichier spécifié. Si les droits ne sont pas a+rw (écriture et lecture pour tout le monde) alors changer ces droits.
Je pense maintenant qu'un if sera plus approprié :
#!/bin/bash
ls-l fichier
if ls-l fichier != a+rw
then do chmod a+rw fichier
Qu'en pensez-vous ?
Je pense maintenant qu'un if sera plus approprié :
#!/bin/bash
ls-l fichier
if ls-l fichier != a+rw
then do chmod a+rw fichier
Qu'en pensez-vous ?
Effectivement.
Donc je rajoute une ligne pour demander le fichier.
#!/bin/bash
echo " Quel est le fichier ou répertoire que vous souhaitez rechercher ?"
read fichier
ls-l fichier
if ls-l fichier != a+rw
then do chmod a+rw fichier
exit
Cela te paraît correct?
Je ne suis pas sûr que != fonctionne pour ce genre de test
Merci,
Yonas108
Donc je rajoute une ligne pour demander le fichier.
#!/bin/bash
echo " Quel est le fichier ou répertoire que vous souhaitez rechercher ?"
read fichier
ls-l fichier
if ls-l fichier != a+rw
then do chmod a+rw fichier
exit
Cela te paraît correct?
Je ne suis pas sûr que != fonctionne pour ce genre de test
Merci,
Yonas108
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
#!/bin/bash echo " Quel est le fichier ou répertoire que vous souhaitez rechercher ?" read fichier if [ "$(stat -c %a ${fichier})" -lt "666" ] then chmod a+rw "${fichier}" fi exit:-))
Merci Jipicy !
Cependant, je ne comprend pas la syntaxe suivante if [ "$(stat -c %a ${fichier})" -lt "666" ].
Quelle est la différence entre ls-l et stat -c%a -lt ?
Merci,
Yonas108
Cependant, je ne comprend pas la syntaxe suivante if [ "$(stat -c %a ${fichier})" -lt "666" ].
Quelle est la différence entre ls-l et stat -c%a -lt ?
Merci,
Yonas108
stat -c %a fichier affiche les droits en octal de fichier
Voir man stat pour tous les détails.
if [ "$(commande)" -lt "nnn" ] teste ( [...] )que le résultat de "$(commande)" soit inférieur "-lt" (lether than = inférieur à) au chiffre fourni "nnn"
On aurait pu l'écrire aussi comme suit :
Voir man stat pour tous les détails.
if [ "$(commande)" -lt "nnn" ] teste ( [...] )que le résultat de "$(commande)" soit inférieur "-lt" (lether than = inférieur à) au chiffre fourni "nnn"
On aurait pu l'écrire aussi comme suit :
if test "$(commande)" -lt "nnn";-))
Cependant, j'ai un peu de mal à appliquer à ce que je veux faire.
Que dites-vous de ce script ?
#!/bin/bash
ls-l fichier
while ls-l fichier ....
do chmod a+rw fichier
exit 0;
Merci,
Yonas108
echo " Quel est le fichier ou répertoire que vous souhaitez rechercher ?"
read nom_fic
echo -e "\033[37m Résultat de votre recherche :\033[00m"
find /* -name $nom_fic
Ensuite tu balances les droits que tu souhaites attribuer. Une valeur X que tu lis et applique sur le fichier / répertoire précédemment trouvé.
PS : j'ai repris le code sur mon script posté dans l'astuce.
dyllan