Éjecter instantanément tous les disques montés & disques à partir de la ligne de commande sous Mac OS X

Anonim

La prochaine fois que vous êtes sur la ligne de commande et que vous devez éjecter chaque volume monté, disque dur, disque, image disque et/ou lecteur externe connecté à un Mac, vous pouvez les éjecter instantanément d'un seul coup avec un outil pratique chaîne de commande osascript. C'est très bien si vous travaillez fréquemment dans le terminal et que vous voulez emballer rapidement un poste de travail et partir, mais c'est aussi très utile pour gérer à distance les Mac via une connexion ssh, ou ajouter à un script shell, entre autres utilisations potentielles .

Pour ceux qui ne connaissent pas osascript, il s'agit d'une interface de ligne de commande vers AppleScript qui vous permet d'exécuter des scripts AppleScripts et OSA à partir du terminal. La fonctionnalité est assez simple, vous lui fournissez simplement un script ou une déclaration que vous auriez autrement placé dans l'éditeur AppleScript, et le tout est géré à partir du terminal plutôt que d'avoir à se lancer dans l'application GUI sous OS X. Utilisons osascript pour éjecter tous les volumes montés sur un Mac.

Éjection de tous les volumes, lecteurs et images de disque montés via le terminal

Depuis le terminal, exécutez la chaîne de commande suivante sur une seule ligne :

"

osascript -e &39;tell application Finder>"

Comme d'habitude avec la ligne de commande, assurez-vous que toute la syntaxe de la commande est sur une seule ligne. À moins que la fenêtre de votre terminal ne soit très grande, elle sera probablement bouclée, ce n'est pas grave.

Dès que vous appuyez sur la touche Entrée pour exécuter la commande, les volumes commencent à s'éjecter. Les images disque et les volumes réseau démarrent immédiatement, tandis que les disques durs externes tournent en premier avant d'être éjectés. Néanmoins, même si vous devez attendre le démarrage de certains disques, l'ensemble de la tâche est très rapide et aucune autre interaction n'est requise.

Il existe certainement d'autres moyens de le faire, y compris avec les outils hdiutil et diskutil, mais la méthode osascript est probablement la plus rapide car elle éjecte tout sans avoir à utiliser de points de montage. Si vous connaissez une autre méthode pour éjecter en masse des volumes, peut-être compatible avec plusieurs plates-formes afin qu'elle fonctionne sous Mac OS X ainsi que Linux, faites-le nous savoir dans les commentaires.

Vous l'utilisez souvent ? Pensez à l'ajouter à votre bash_profile avec un alias pour raccourcir la longueur de la commande. Ajoutez simplement quelque chose comme ce qui suit à .bash_profile à cette fin :

"

alias ejectall=&39;osascript -e &39;tell application Finder>"

Cela vous permet de n'avoir qu'à taper "ejectall" plutôt que la chaîne de commande entière.

Bien sûr, tout cela est un peu avancé, et la plupart des utilisateurs de Mac sont mieux servis en éjectant des disques en maintenant la touche d'éjection enfoncée, ou en passant par le Finder d'OS X en les trouvant dans la barre latérale, en survolant le nom et en cliquant sur le bouton d'éjection.

Éjecter instantanément tous les disques montés & disques à partir de la ligne de commande sous Mac OS X