Accueil

Comment transformer des scripts Bash en applications cliquables avec AppleScript

Added 2019-04-08


Dites que vous êtes un assistant de script bash qui aime automatiser les tâches pour vos amis et votre famille moins férus de technologie. Même si vous leur avez donné un script qui résout complètement leur problème, ils sont peut-être toujours inquiets de l’utilisation du terminal par eux-mêmes. Dans ce cas, vous pouvez également tout faire manuellement pour eux.

Heureusement, AppleScript est un langage convivial qui permet de transformer facilement vos scripts en quelque chose de partageable et convivial.

Débuter avec AppleScript

AppleScript est un langage de programmation ancestral qui remonte à Mac OS 7. Il a été conçu comme un langage simple et lisible selon les normes des utilisateurs des années 1980. Son objectif principal est d'interagir avec le Finder afin d'automatiser les flux de travail.

Vous pouvez l'utiliser pour prendre un flux de travail complexe, tel qu'un script bash ou la modification d'un fichier de préférences, et le simplifier pour le réduire au simple clic d'un bouton. Vous pouvez également entrer des données sous la forme de fichiers que vous faites glisser dessus.

L'éditeur de script dans votre Utilitaires  folder est un éditeur de texte AppleScript et un IDE qui vous aidera à écrire un AppleScript fonctionnel. Ses Aidez-moi  élément de la barre de menu est une ressource inestimable. Utilisez-le pour charger le Guide du langage AppleScript.

Vous pouvez aussi aller à Fenêtre>  Bibliothèque  pour obtenir une liste de toutes les commandes AppleScript possibles.

Rendez vos scripts Bash cliquables avec AppleScript

Bash peut vous aider à interagir avec votre Mac de manière chirurgicale et extrêmement spécifique. Il est possible d’écrire presque tout ce que vous voulez faire sur votre machine.

Normalement, si vous voulez exécuter un script bash, vous devez vous assurer qu'il dispose des autorisations nécessaires. Ensuite, vous devez ouvrir Terminal, accédez au chemin du script, puis appuyez sur Revenir  pour l'exécuter. Avec AppleScript, cependant, vous pouvez exécuter vos scripts bash avec un double-clic rapide.

La commande “do shell script”

Ajouter votre script bash à AppleScript est un processus simple. D'abord, allez à Applications>  Utilitaires>  Éditeur de script  ouvrir un nouvel AppleScript. Ensuite, choisissez un emplacement pour votre script fini et appuyez sur Nouveau document . Vous verrez une fenêtre d'éditeur vide.

Préparez un script bash en utilisant Les meilleurs éditeurs de texte Mac à utiliser en 2018 votre éditeur de texte macOS préféré , ou faites-le correctement dans l'éditeur de script. Lorsque vous êtes prêt, ajoutez-le en utilisant le faire un script shell  commander. Vous pouvez envoyer une commande en utilisant:


faire un script shell "Commande"

Ajoutez un point-virgule (;) pour envoyer plusieurs commandes, comme dans:


faire un script shell "Command1; Command 2"

Pour faire référence à un script bash existant qui est ailleurs, utilisez simplement:


faire un script shell "/path/to/your/script.sh"

Si vous souhaitez exécuter une commande nécessitant des privilèges d'administrateur, vous pouvez d'abord les définir dans AppleScript, comme suit:


script shell "commande" nom d'utilisateur "USER" mot de passe "PASSWORD" avec privilèges d'administrateur

Frappé le Jouer  bouton pour parcourir votre AppleScript et vérifier les erreurs de syntaxe. Enfin, sauvegardez votre AppleScript; sous Format de fichier choisir Application . Cela vous permettra de double-cliquer pour l'exécuter.

Inverser dans Bash

En passant, si vous vouliez faire l'inverse et ajouter des commandes AppleScript à votre script bash? Eh bien, vous pouvez le faire aussi!

Dans vos scripts bash, vous pouvez ajouter un osascript  suivi de votre AppleScript, pour ajouter des éléments amusants comme les entrées utilisateur ou les bannières d’alerte.

Utilisation de gouttelettes AppleScript

Icône de droplet AppleScript

Supposons que vous ayez une charge de photos à redimensionner pour vous préparer pour votre blog ou que vous souhaitiez trier tous vos fichiers par type. Vous pouvez écrire des scripts pour accomplir ces actions, mais un script bash traditionnel nécessite que vous écriviez le chemin complet de chaque fichier que vous souhaitez manipuler à chaque fois que vous le souhaitez. Cela peut devenir fastidieux lorsque vous faites un gros lot de fichiers.

Heureusement, vous pouvez configurer un AppleScript qui ne nécessite que de faire glisser votre fichier cible dessus pour l'exécuter en tant qu'entrée. Ces AppleScripts spéciaux sont appelés Gouttelettes . Voici comment en créer un:

  1. Ouvrez un nouvel AppleScript avec Script Editor.
  2. Démarrer le script AppleScript avec le gestionnaire sur open drop_file . Vous pouvez appeler le drop_file  tout ce que tu veux. AppleScript l'utilisera comme une variable affectée au fichier que vous avez déposé.
  3. Terminez le reste de votre script en utilisant faire un script shell  ou une syntaxe AppleScript normale. Assurez-vous de fermer votre script avec fin ouverte  fermer le gestionnaire.
  4. Enregistrez votre AppleScript en tant qu'application, comme expliqué ci-dessus.

Maintenant, vous pouvez glisser et déposer des fichiers directement sur vos scripts.

Un exemple de script AppleScript

Fenêtre de l'éditeur Applescript

L'exemple ci-dessous montre ces deux fonctionnalités pratiques en action.

Modifier les autorisations de tout fichier glissé-déposé

Supposons que vous vouliez donner un fichier, un script ou un document à un ami et que vous vouliez vous assurer qu'ils ne pourraient pas jouer avec. En utilisant ce script, vous pouvez facilement supprimer les autorisations d’écriture de tout fichier pour leur donner une version en lecture seule de celui-ci.

N'oubliez pas que lorsque vous déposez un fichier par-dessus une Droplet, son nom de chemin est lu par AppleScript au format HFS (système de fichiers hiérarchique). Ceci utilise des deux points et n'échappe pas aux espaces. Ainsi, un fichier sur votre bureau se lit comme suit:


Macintosh HD: Utilisateurs: jdoe: Bureau: myfile

Bash utilise une norme de chemin différente appelée POSIX, de sorte que le même fichier dans bash est lu comme Macintosh \ HD / Utilisateurs / jdoe / Desktop / myfile . Le script ci-dessous convertit le nom de fichier en chemin standard avant de modifier les autorisations correspondantes:


sur open drop_file
  définir bash_path_file sur le chemin POSIX de drop_file
  le script shell "chmod -R -w" et la forme citée de bash_path_file
fin ouverte

Utilisez Automator pour plus d'automatisation Mac





Nuage de tags

Choix de L'éditeur

Thomas Becket

Je suis un écrivain indépendant qui couvre la programmation et les logiciels.
Je suis étudiant en informatique et je m'intéresse à la programmation, aux logiciels et à la technologie
Gadgets technologiques et critiques 2019