Aller au contenu

apple script montage lecteur réseau


clive-guilde

Messages recommandés

Salut à tous les informaticiens,

 

Je vous contacte car j'aurais besoin à nouveau de votre expertise. On vient de changer l'URL de mon lecteur de réseau et mon apple script ne fonctionne plus car le pathname contient le caractère % en début d'un nom de sous-dossier (bravo à l'informaticien pour cette grande décision !)

Voici mon script :

tell application "System Events"
	do shell script "mount_smbfs '//nom_du_domaine;user:paswword@adresse_du_domaine/folder1/folder2/%25folder3/folder4' /Users/mon_nom/dossier_cible"
	delay 2
end tell

C'est au niveau du sous-dossier folder3 qu'il y a le caractère % devant le nom et qui pose problème. J'ai essayé de le convertir en ASCII (si je me trompe pas) avec %25 mais cela ne fonctionne pas vraiment. J'arrive de temps en temps à accéder au folder3 mais jamais au folder4. J'ai l'erreur suivante :

error "Erreur dans System Events : sh: line 1:   896 Illegal instruction: 4  mount_smbfs '//nom_du_domaine;user:paswword@adresse_du_domaine/folder1/folder2/%25folder3/folder4' /Users/mon_nom/dossier_cible" number 132

Si un expert informatique (et je sais qu'ils sont nombreux et compétents sur ce forum) pouvait m’aider.

 

Merci pour m'avoir lu.

Lien vers le commentaire
Partager sur d’autres sites

Pour ne pas tout mélanger... Est-ce qu'en exécutant la commande "mount_..." directement dans le Terminal (sans passer par un Apple Script) il y a la même erreur ou pas ?

EDIT : sachant que "%25" est un code qui représente le caractère "%"  dans les URL, mais qu'ici ce n'est pas une URL, essaie avec "%folder3" au lieu de "%25folder3"

Modifié par pehache
Lien vers le commentaire
Partager sur d’autres sites

@pehache
Merci pour ta reponse. je suis en télétravail aujourd'hui. J'essaye de séparer demain comme tu le proposes et ferais un retour. 

 

J'ai pu un peu progresser entre temps et c'est encore plus bizarre. En fait mon script que j'exécute dans Apple script marche bien à la première exécution. Je déconnecte le lecteur réseau puis je relance le script et c'est là j'ai l'erreur. Je redémarre mon ordinateur. Je relance le script et ça remarche mais seulement la première fois.

 

A ne plus rien n'y comprendre.

 

Edit : % seul ne fonctionne pas.

Modifié par clive-guilde
Lien vers le commentaire
Partager sur d’autres sites

Bon j'ai essayé de l'exécuter dans le terminal mais ça ne marche pas comme dans apple script et je n'arrive à rien.

J'ai essayé %25 et % pour le folder3 mais sans aucun succès.

Je pense que je vais abandonner et aller manuellement 2 sous dossier plus bas (c'est à dire me connecté au folder2). Par contre lors de mes recherches j'ai pu améliorer mon script qui est maintenant beaucoup simple à mettre en œuvre car :

- il ne nécessite plus de dossier source en local sur l'ordinateur et il est donc transposable entre différents mac,

- inclus maintenant un test try pour ne plus bloquer l'ordinateur lorsqu'il ne trouve pas le dossier réseau (le finder peut planter sans le try s'il ne trouve pas le dossier réseau pour X raisons).

 

Voici le nouveau script si ça peut intéresser quelqu'un :

tell application "Finder"
	try
		mount volume "smb://URL_du_dossier_reseau" as user name "mon_login"
	end try
	delay 2
end tell

Comme la connexion ne change pas la recherche est toujours supporté (attention pour cela il faut au minimum macOS 10.13 de mémoire).

Le mot de passe est demandé à la première connexion mais il peut être stocké dans le trousseau et donc n'être demandé qu'une seule fois.

De plus contrairement à avant mon script ne comporte plus en clair le mot de passe donc c'est beaucoup mieux.?

Voici également le script pour déconnecter les lecteurs réseaux :

tell application "System Events"
	try
		do shell script "diskutil unmount /Volumes/nom_du_dossier_connecté"
	end try
	delay 2
end tell

 

Modifié par clive-guilde
ajout du script de déconnexion
Lien vers le commentaire
Partager sur d’autres sites

Le 09/07/2020 à 16:13, clive-guilde a dit :

Bon j'ai essayé de l'exécuter dans le terminal mais ça ne marche pas comme dans apple script

??

Bon, la façon dont tu t'y prends maintenant parait plus propre de toutes façons (pour l'histoire du mot de passe).

Après, je ne sais pas quel est ton besoin exact, mais il me semble que l'automount serait LA bonne solution ici.

Lien vers le commentaire
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...