desktop plist schreiben

O

onebld

Neues Mitglied
Thread Starter
Dabei seit
22.04.2014
Beiträge
11
Reaktionspunkte
0
Hallo zusammen

Eine etwas dumme Frage:d

Wie kann ich folgende plist mit einem default write Befehl erstellen ohne auf Plistbuddy zurückzugreifen:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Background</key>
<dict>
<key>default</key>
<dict>
<key>NewImageFilePath</key>
<string>/Library/Desktop Pictures/Frog.jpg</string>
</dict>
</dict>
</dict>
</plist>

Vielen Dank für eure Hilfe!!!
 
Die Preference-Dateien sind doch meines Wissens ganz normale reine Textdateien. Das sollte sich also mit jedem beliebigen Texteditor erledigen lassen, auch mit TextEdit. Als reinen Text abspeichern und dann das Suffix ändern auf .plist.
 
Hallo Schiffversenker

Danke für deine Antwort.
Jedoch sollte ich es mit einem Terminal Befehl machen können --> defaults write

Mir ist schon bewusst, dass ich die plist mit einem TextEditor verändern kann, jedoch ist das nicht mein Ziel.
 
Schon auf Yosemite? Dann könntest Du's einfach mit AppleScript machen. Etwa so:

Code:
[B]use[/B] [I]framework[/I] "Foundation"
[B]use[/B] [I]scripting additions[/I]


[B]set[/B] theFileName [B]to[/B] POSIX path [B]of[/B] ([B]choose file name[/B])


[B]tell[/B] [I]current application's[/I] (NSDictionary's dictionaryWithDictionary:{Background:{Default:{NewImageFilePath:"/Library/Desktop Pictures/Frog.jpg"}}}) [B]to[/B] writeToFile:theFileName atomically:[I]false[/I]
 
  • Gefällt mir
Reaktionen: varuna
Hi kermitd

Vielen Dank für deine Antwort.
Jedoch bin ich darauf angewiesen es mit einem "defaults write" Befehl zu erledigen, da ich daraus ein "Payload Free Package" machen muss und es für ein Deployment verwenden möchte.

Grüsse
 
Vielen Dank für deine Antwort.
gern...
Jedoch bin ich darauf angewiesen es mit einem "defaults write" Befehl zu erledigen, da ich daraus ein "Payload Free Package" machen muss und es für ein Deployment verwenden möchte.

OK. Hab da die Syntax nicht im Kopf bzw. kann ohne weiteres nichts zu sagen. Andere aber sicher schon, wenn nicht hier dann im Unix- oder Entwickler-Unterforum. AS kannst Du ansonsten auch per osascript in der Shell aufrufen, falls Dir (oder über Google hier Hereingeschneiten) das weiterhilft (Vorauss. wie gesagt Yosemite):
Code:
osascript -e "use framework \"Foundation\"" -e "use scripting additions" -e "set theFileName to POSIX path of (choose file name)" -e "tell current application's (NSDictionary's dictionaryWithDictionary:{Background:{Default:{NewImageFilePath:\"/Library/Desktop Pictures/Frog.jpg\"}}}) to writeToFile:theFileName atomically:false"
 
Hallo,

hier gab es mal einen Thread zu genau diesem Thema. Der ist aber wahrscheinlich gar nicht so einfach zu finden ...

defaults write Name(bzw.ggfs.Pfad)/der/Plist '{default = {NewImageFilePath = "/Library/Desktop Pictures/Frog.jpg"; }; }'

Speichere doch mal deine Plist, lese sie mit defaults read aus und vergleiche! ;)


Und Dank an kermitd für das Skript Beispiel in #4!

Gruß
 
Hallo zusamen

Sorry für die späte Antwort.
Hat mit eurer Hilfe perfekt geklappt.

Danke Danke Danke!!!
 
Zurück
Oben Unten