FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Comment transformer des scripts Bash en applications cliquables à l'aide d'AppleScript

Supposons que vous soyez un assistant de script bash qui aime automatiser les tâches de vos amis et de 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 peuvent toujours être anxieux à l'idée d'utiliser le terminal par eux-mêmes. Dans ce cas, autant tout faire manuellement pour eux.

Heureusement, AppleScript est un langage convivial qui peut facilement prendre vos scripts et les transformer en quelque chose à la fois partageable et convivial pour l'interface graphique.

Premiers pas avec AppleScript

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

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 en un simple clic sur un bouton. Vous pouvez également prendre des entrées sous la forme de fichiers que vous faites glisser et déposez dessus.

Remarque : Commencez par notre guide d'introduction à la syntaxe et au flux de travail AppleScript.

L'outil Script Editor dans vos Utilitaires dossier est un éditeur de texte AppleScript et un IDE qui vous aideront à écrire un AppleScript fonctionnel. Son Aide l'élément de la barre de menus est une ressource inestimable. Utilisez-le pour charger le Guide du langage AppleScript.

Vous pouvez également accéder à 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 hyper spécifique. Il est possible de scripter presque tout ce que vous voulez faire sur votre machine.

Normalement, si vous souhaitez exécuter un script bash, vous devez vous assurer qu'il dispose des autorisations exécutables. Ensuite, vous devez ouvrir Terminal, accéder au chemin du script et appuyer sur Retour pour l'exécuter. Avec AppleScript, cependant, vous pouvez exécuter vos scripts bash d'un simple double-clic.

La commande "do shell script"

L'ajout de votre script bash à AppleScript est un processus simple. Tout d'abord, accédez à Applications > Utilitaires > Éditeur de script pour ouvrir un nouvel AppleScript. Ensuite, choisissez un emplacement pour votre script terminé et cliquez sur Nouveau document . Vous verrez une fenêtre d'éditeur vide.

Préparez un script bash à l'aide de votre éditeur de texte macOS préféré ou faites-le directement dans l'éditeur de script. Lorsque vous êtes prêt, ajoutez-le à l'aide de

faire un script shell 

commander. Vous pouvez envoyer une commande en utilisant :

faire le script shell "Commande" 

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

faire le script shell "Command1; Command 2" 

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

faire le 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 l'AppleScript, comme suit :

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

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

Inverser dans Bash

En remarque, et 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 une entrée utilisateur ou des bannières d'alerte.

Utilisation des droplets AppleScript

Comment transformer des scripts Bash en applications cliquables à l aide d AppleScript

Supposons que vous ayez une charge d'images que vous devez 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 vous oblige à écrire le chemin complet de chaque fichier que vous souhaitez manipuler à chaque fois que vous le souhaitez. Cela peut devenir fastidieux lorsque vous traitez 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 Droplets . Voici comment en créer un :

  1. Ouvrez un nouvel AppleScript avec Script Editor.
  2. Démarrez l'AppleScript avec le gestionnaire
    on open drop_file 
    . Vous pouvez appeler le dropped_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
    do shell script 
    ou la syntaxe AppleScript habituelle. Assurez-vous de fermer votre script avec
    end open 
    pour fermer le gestionnaire.
  4. Enregistrez votre AppleScript en tant qu'application, comme expliqué ci-dessus.

Vous pouvez maintenant faire glisser et déposer des fichiers directement sur vos scripts.

Un exemple de script AppleScript

Comment transformer des scripts Bash en applications cliquables à l aide d AppleScript

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

Modifier les autorisations de tout fichier glisser-déposer

Supposons que vous vouliez donner un fichier, un script ou un document à un ami et que vous vouliez vous assurer qu'il ne pourrait pas s'en mêler. À l'aide de ce script, vous pouvez facilement supprimer les autorisations d'écriture de n'importe quel fichier pour leur en donner une version en lecture seule.

Gardez à l'esprit que lorsque vous déposez un fichier au-dessus d'un Droplet, son nom de chemin est lu par AppleScript au format HFS (Hierarchical File System). Cela utilise des deux-points et n'échappe pas aux espaces, donc un fichier sur votre bureau se lit comme suit :

Macintosh HD:Users:jdoe:Desktop:monfichier 

Bash utilise un standard de chemin différent appelé POSIX, donc le même fichier dans bash est lu comme

Macintosh\ HD/Users/jdoe/Desktop/monfichier 

. Le script ci-dessous convertit le nom du fichier dans le chemin standard approprié avant de modifier les autorisations :

sur drop_file ouvert 
définissez bash_path_file sur le chemin POSIX de drop_file
faire le script shell "chmod -R -w" et la forme citée de bash_path_file
bout ouvert

Utiliser Automator pour une automatisation plus Mac

Maintenant que vous avez la démangeaison de l'automatisation, grattez-la en plongeant dans Automator sur votre Mac. Automator et AppleScript ont beaucoup de similitudes. Si vous débutez dans le monde des scripts et de l'automatisation, vous trouverez peut-être qu'Automator est une passerelle plus simple. Au lieu d'un langage de programmation lisible, Automator utilise des bulles de glisser-déposer intuitives et une interface facile à apprendre pour simplifier vos tâches banales.


[]