De la création et de l'écriture .plist avec Terminal ou d'un script bash
J'ai besoin de créer un .fichier plist en cours de post-installation et la seule option que je peux utiliser un script bash. J'ai créer un foo.plist dans /Library/launchAgents
avec un script bash et j'ai utilisé la commande suivante:
cd /Library/launchAgents
touch foo.plist
maintenant, j'ai besoin d'écrire du contenu dans cette .fichier plist, par exemple comme ceci:
".plist contents" >> foo.plist
Est-il une commande qui peut ce faire dans le terminal?
Où sont les plist contenu que vous voulez écrire dans le fichier plist? Je veux dire, avez-vous une liste dans un fichier? Avec leurs correspondants valeur? Sont-ils dans une variable d'environnement? Pourquoi devez-vous utiliser
ouais j'ai un travail .fichier plist . J'ai besoin d'utilisé bash parce que l'installation s'exécute ce script bash. afin d'automatiser le processus de post-installation étape lors de l'installation.
bash
, pourquoi ne pouvez-vous pas utiliser un éditeur?ouais j'ai un travail .fichier plist . J'ai besoin d'utilisé bash parce que l'installation s'exécute ce script bash. afin d'automatiser le processus de post-installation étape lors de l'installation.
OriginalL'auteur Mubasher | 2014-12-09
Vous devez vous connecter pour publier un commentaire.
Votre question ne spécifie pas très bien ce que vous avez obtenu, et pourquoi vous avez besoin de le faire dans
bash
, mais si vous devez le faire de cette façon, vous pouvez le faire comme ceci:Donc, vous pouvez l'enregistrer dans un fichier appelé
Buildplist
et puis le rendre exécutablepuis de l'exécuter en tapant ceci:
Vous pouvez le faire écrire le fichier plist directement dans
/Library/launchAgents
en changeant la deuxième ligne pour quelque chose comme ceci:Vous pouvez lui faire accepter des paramètres. Donc, si vous voulez passer l'Auteur en tant que premier paramètre, vous pouvez le faire comme ceci:
puis exécutez
de passer "Freddy Grenouille" en tant qu'auteur.
Si vous voulez éviter d'écraser tout fichier plist qui existe déjà, vous pouvez le faire comme ceci:
J'ai mis le nom du fichier plist dans une variable afin de simplifier les opérations de maintenance, et d'éviter de taper deux fois.
est-il possible que je puisse vérifier et sauter si le fichier existe déjà??
Oui, bien sûr. J'ai ajouté un petit plus à la fin pour montrer comment le faire. S'il vous plaît avoir un autre regard.
/usr/libexec/PlistBuddy
est mieux.OriginalL'auteur Mark Setchell
PlistBuddy est ce que vous voulez.
Puis ajouter une entrée au fichier comme ceci,
Par la voie,
man plist
,man plutil
peut être utile pour vous.OriginalL'auteur DawnSong