Fichier bash avec find ne fonctionne pas

Bon je suis de plus en plus perdu. :cry:

J’ai simplifié le script en faisant uniquement un ls pour voir si j’étais bien dans le repertoire /home/anne

D’abord cd sans rien devant:

#!/bin/sh cd /home/anne gksu ls

voilà la réponse:

francois@Wheezy:~/fichiers bash$ ./q.sh ./q.sh: 3: cd: can't cd to /home/anne chown.sh doublons.sh q.sh taille640.sh taille800.sh

Ensuite j’ai placé gksu devant:

#!/bin/sh gksu cd /home/anne gksu ls

réponse:

francois@Wheezy:~/fichiers bash$ ./q.sh chown.sh doublons.sh q.sh taille640.sh taille800.sh

La même chose.

A noter que je n’ai pas de demande de mot de passe…

Les commandes cd, ls etc … Ne sont pas des programmes sudo ne sert pas à ça, en revanche chown ça oui !

donc on ne peut pas changer de repertoire dans un script? :shifty:

Si sans mettre sudo devant … Je ne sais pas comment te le dire !

Oui mais j’ai essayé, regardes au dessus. voilà la réponse:

francois@Wheezy:~/fichiers bash$ ./q.sh ./q.sh: 3: cd: can't cd to /home/anne

:confused:

[quote=“felvic”]

francois@Wheezy:~/fichiers bash$ ./q.sh ./q.sh: 3: cd: can't cd to /home/anne

:confused:[/quote]

Quels sont les droits sur le dossier /home/anne ?

Si ton script q.sh devient :

#!/bin/sh
cd /home/anne
ls 

et que tu le lances avec la commande su -c 'q.sh', le résultat devrait être différent.

Si ton script q.sh devient :

#!/bin/sh
cd /home/anne
ls 

et que tu le lances avec la commande su -c 'q.sh', le résultat devrait être différent.[/quote]

Oui, mais ça c’est en mode terminal, pas directement dans l’explorateur de fichiers…

C’est un problème de droits bien sur, tu veux faire des actions que seul un autre user peut faire.
Le plus simple te faire un raccourci qui fait “gksu tonscript.sh” dans ce cas tu auras la demande du mot de passe root et ensuite ton script fonctionnera puisque ce sera “root” qui fera les actions.

Bon, finalement j’irai dans le terminal en root et je lancerai le script, ce sera plus simple.

Merci à tous pour votre aide! :wink:

ps: Dunatotatos, tu es en Arabie Saoudite?