# Problème dossier Bin et écriture



## hierjaivuunchat (6 Novembre 2017)

[Merci de bien vouloir déplacer ce sujet si je ne l'ai pas posté dans la bonne section]


Bonjour,

J'aimerais utiliser le logiciel Selenium sur mon Mac, est pour cela je dois copier un Driver dans le dossier /usrs/local/bin. Seulement voila, en allant dans Aller au dossier -> /usrs/local/bin , je tombe sur une page m'affichant les 3 dossiers Application / Utilisateur / Partagé. J'ai donc du utiliser le terminal afin de révéler tous les dossiers cachés et d'y aller manuellement sans passer par "Aller au dossier".

Mon second problème le dossier bin, puisque je ne peux pas y copier mon driver ... J'ai beau aller dans les préférences de permissions, rien à faire, le message suivant s'affiche "*Impossible d’effectuer l’opération car vous ne disposez pas des autorisations requises." *Mon souhait aurait été de faire comme dans cette vidéo : http://urlz.fr/652P à 4mn36.

Pour résumer, voici mes deux problèmes : impossible d'accéder au chemin /usrs/local/bin sans utiliser la commande dans le terminal pour afficher les dossiers cachés, et ensuite impossible de copier le driver directement dans bin, comme sur la vidéo.

Merci d'avance pour vos réponses et pour votre aide !


----------



## macomaniac (6 Novembre 2017)

Salut *hier
*
L'adresse n'est pas */usrs/local/bin* > mais */usr/local/bin*.

À présent > si tu veux faire une copie d'un pilote dans */usr/local/bin* --> dans une fenêtre du «Terminal» > commence par saisir le départ de commande :

```
sudo cp -av
```
 et saute *un espace* avec la barre d'espacement du clavier.

À présent > fais un glisser-déposer direct au pointeur de ton élément dans la fenêtre du «Terminal» > ce qui va inscrire automatiquement l'adresse à l'objet. Tu vas donc obtenir une séquence du type :

```
sudo cp -av /chemin/objet
```

*Un espace* se sera créé automatiquement en sortie du glisser-déposer. Complète alors à la main par l'adresse de destination de la copie = */usr/local/bin* --> ce qui te donne une commande ainsi présentée :

```
sudo cp -av /chemin/objet /usr/local/bin
```

Presse la touche "Entrée" du clavier pour exécuter la commande --> une demande de *password* s'affiche (commande *sudo*) --> tape ton mot-de-passe de session admin à l'aveugle - aucun caractère ne s'affichant à la frappe - et valide de nouveau.

Une copie de ton objet s'est créée à l'adresse : */usr/local/bin/objet*. Si tu veux vérifier sa présence > tape la commande :

```
sudo open /usr/local/bin
```


qui ouvre une fenêtre affichant l'espace du dossier *bin*.


----------



## hierjaivuunchat (6 Novembre 2017)

Merci pour ton aide ! Voici ce que le terminal m'affiche à présent :

MacBook-Pro-de-Utilisateur:downloads Utilisateur$ sudo cp -av/Users/NomUtilisateur/Downloads/chromedriver /usr/local/bin

cp: illegal option -- /

usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file target_file

      cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file ... target_directory

Le Driver n'est toujours pas copié dedans, j'ai été le voir manuellement en passant par Allez au dossier -> /usr/local/bin (qui fonctionne à présent, j'avais en effet rajouté un s, merci !).


----------



## hierjaivuunchat (6 Novembre 2017)

Je viens de réessayer en tapant cette fois-ci la commande suivante :

sudo cp Chromedriver /usr/local/bin

Et cette fois-ci, le terminal ne me demande même pas mon mot de passe ... 
Merci de bien vouloir m'éclairer.


----------



## macomaniac (6 Novembre 2017)

Tu avais *accollé* *-av* avec */Users/NomUtilisateur/Downloads/chromedriver* avec qu'il faut laisser un *espace libre* entre *-av* et */Users/NomUtilisateur/Downloads/chromedriver*.

La commande longue doit donc être du type :

```
sudo cp -av /Users/NomUtilisateur/Downloads/chromedriver /usr/local/bin
```

que tu peux raccourcir en :

```
sudo cp -av chromedriver /usr/local/bin
```
puisque tu t'es loggé par un *cd* dans le sous-dossier *Downloads* (ce qui n'était pas requis).

Ou que tu peux encore abréger ainsi :

```
sudo cp -av ~/Downloads/chromedriver /usr/local/bin
```
le tilde *~* abrégeant le chemin : */Users/tonnom*

Enfin > pour l'absence de mot-de-passe --> sache qu'après une 1ère authentification pour un *sudo* > tu as un délai de grâce de *5'* pendant lesquelles tu peux repasser des *sudo* sans avoir besoin de te ré-authentifier.


----------



## hierjaivuunchat (6 Novembre 2017)

Merci pour ta réponse, le terminal m'a bien confirmé le bon déroulement de l'opération :

/Users/Utilisateur/Downloads/chromedriver -> /usr/local/bin

Seulement en allant vérifier manuellement, il n'y est toujours pas ... Voici une capture d'écran pour confirmation :


----------



## macomaniac (6 Novembre 2017)

Pour poster une image > presse le bouton : *Transférer un fichier* situé en-dessous du champ de saisie d'un message.


----------



## Locke (6 Novembre 2017)

@hierjaivuunchat
C'est moi qui est modifié ton image en réponse #6.


----------



## macomaniac (6 Novembre 2017)

Forcément qu'il n'y est pas > puisque tu affiches l'espace du dossier* /usr/bin* au lieu de */usr/local/bin* -





Passe la commande :

```
sudo ls -l /usr/local/bin/chromedriver
```
 (les "*l*" sont des minuscules de la lettre "*L*")


et tu vas obenir la ligne des permissions sur ton objet.


----------



## hierjaivuunchat (6 Novembre 2017)

Merci, je viens en effet de m'apercevoir qu'il y a deux dossiers bin, l'un présent dans User et l'autre dans Local. Dans la vidéo que j'ai partagé ci-dessus on voit cependant que c'est en accédant depuis /usr/local/bin qu'il copie le driver.

En tapant ta commande que tu m'as indiqué, le terminal m'indique ceci :

ls: /usr/local/bin/chromedriver: Not a directory

Voici également ce qu'il y a présent dans le dossier /usr/local/bin :






Il n'y a qu'un élément présent dedans ...

A l'inverse, dans le dossier /usr/bin, il y en a des centaines (voir screen de mon dernier message), comme montré sur la vidéo. Je ne sais donc pas quel est le bon dossier : si je suis  l'explication de ton dernier message je dois normalement aller dans /usr/local/bin , ou il n'y a qu'un seul élément, mais si je suis la vidéo, le Driver se trouve dans un dossier en contenant plusieurs centaines ...

Cela fait peut-être un peu beaucoup de questions, merci de prendre de ton temps pour me répondre.


----------



## macomaniac (6 Novembre 2017)

Dans le sous-dossier */usr/bin* --> tu as des exécutables natifs de l'OS. Ce sous-dossier est verrouillé dans les OS récents.

D'après ta capture, tu n'as *pas de sous-dossier* *bin* dans */usr/local* > rien qu'un fichier exécutable *bin* qui est une aberration (un faux-fichier).

Passe les 3 commandes (l'une après l'autre - en copier-coller) :

```
sudo rm -f /usr/local/bin
sudo mkdir /usr/local/bin
sudo cp -av ~/Downloads/chromedriver /usr/local/bin
```


la 1ère supprime le pseudo-fichier exécutable *bin* dans */usr/local*

la 2è crée le sous-dossier */bin* dans */usr/local*

la 3è copie *chromedriver* dans */usr/local/bin*

Une commande :

```
sudo ls -l /usr/local/bin/chromedriver
```
devant cette fois te retourner la ligne des permissions sur l'objet.


----------



## hierjaivuunchat (6 Novembre 2017)

Merci, le terminal m'affiche cette commande :


```
-rwxr-xr-x@ 1 MonNom  staff  11924296  3 oct 14:23
```
 (oui j'ai enfin trouvé comment insérer un code !)

Et un nouveau dossier Bin contenant mon driver s'est correctement installé dans mon sous-dossier Local ! 

Maintenant pour finir j'aimerais juste savoir : Comment cela se fait-il que le dossier bin de la personne dans la vidéo contient des centaines d'éléments alors que le mien n'en contenait qu'un seul ? Pourquoi avoir besoin de faire toutes ces manipulations ?

Ayant maintenant correctement installé le driver dans le bon Path (si j'ai bien compris), comment faire à présent pour utiliser Selenium ? Je devrai passer par le terminal ? Je vois par exemple que sous Firefox, un nouveau bouton "Selenium IDE" permet de lancer un utilitaire et se présente comme suit :
	

		
			
		

		
	






Avec Google Chrome cela se présente peut-être différemment ...

Merci encore pour ton aide !

[EDIT] : Dans les vidéos je vois que beaucoup de personnes utilisent le logiciel Eclipse pour faire fonctionner Selenium.


----------



## macomaniac (6 Novembre 2017)

hierjaivuunchat a dit:


> Maintenant pour finir j'aimerais juste savoir : Comment cela se fait-il que le dossier bin de la personne dans la vidéo contient des centaines d'éléments alors que le mien n'en contenait qu'un seul ?



Ton dossier *bin* ne contenait aucun élément car il n'existait pas comme sous-dossier de */usr/local* > ce qui existait n'était pas un dossier mais un fichier *exec* "*bin*". Or il n'existe aucun fichier *exec* "*bin*" > c'était donc un pseudo-fichier - peut-être le produit d'une manipulation hasardeuse ?

Dans les OS récents dont les dossiers du Système sont verrouillés par un protocole de sécurité au démarrage > l'utilisateur est instamment "invité" (sommé) d'installer les exécutables de tierce partie qu'il souhaite à l'adresse */usr/local/bin* (et surtout pas à */usr/bin* qui est verrouillé. En général > les paquets d'installation d'exécutables en provenance de développeurs tiers ont incorporé l'instruction > et installent au chemin */usr/local* et */usr/local/bin*.

La personne de la vidéo (que je n'ai pas regardée : j'ai horreur des vidéos) doit être un forcené de l'installation d'exécutables en mode "en veux-tu ? - en voilà !". Bon courage avec tous ses petits jouets.


----------



## hierjaivuunchat (6 Novembre 2017)

Très bien, merci pour ton aide et pour tes précisions qui m'ont grandement aidées ! 
A plus tard j'espère


----------

