Domanda:
Sincronizza le preferenze delle app tra più Mac
whatyouhide
2013-04-18 03:47:39 UTC
view on stackexchange narkive permalink

Tendo a tenere tutte le mie cose in Dropbox. Ora che ho acquistato un secondo Mac, ho pensato che sarebbe stata una buona idea mantenere anche le preferenze delle mie applicazioni in Dropbox.

Sono riuscito a sincronizzare alcune delle cartelle Application Support ( Voglio solo che le app più importanti siano sincronizzate) semplicemente collegando la cartella condivisa su Dropbox al collegamento sui Mac:

  ln -s ~ / Dropbox / SharedPrefs / AnApp ~ / Library / Application Support / AnApp  

in questo modo mi assicuro che ogni build di Sublime Text 2 che creo su un Mac verrà sincronizzato sull'altro Mac.

Ma Ho problemi con la sincronizzazione dei file .plist effettivi. Ho fatto esattamente la stessa cosa come sopra (l'esempio è per iTerm 2):

  mv ~ / Library / Preferences / com.googlecode.iterm2.plist ~ / Dropbox / SharedPrefs / ln -s ~ / Dropbox / SharedPrefs / com.googlecode.iterm2.plist ~ / Library / Preferences / com.googlecode.iterm2.plist  

Quindi ora ho il fisico .plist su Dropbox e un collegamento segnaposto sul Mac.

Ma questo non sembra funzionare: quando chiudo e riapro iTerm (o qualsiasi altra applicazione), non è in grado per utilizzare il collegamento simbolico per accedere alle preferenze su Dropbox.

Cosa devo fare?

Apprezzerò ogni consiglio su come mantenere sincronizzate le preferenze dell'applicazione tra due Mac; Uso la riga cmd solo perché ci sono abituato, ma va bene anche un'utilità GUI, un'utilità che non sincronizza solo la cartella Application Support , ma anche .plists e altre cose condivise sarebbero fantastiche!

Immagino che se iTerm non segue i collegamenti simbolici, dovrai assicurarti che su ogni macchina il file nel Dropbox sia il collegamento simbolico.
Quattro risposte:
Kevin Ortman
2014-04-03 09:01:09 UTC
view on stackexchange narkive permalink

Apri le preferenze e seleziona la casella "Carica le preferenze da una cartella o da un URL del cliente" "

Puoi passare alla cartella Dropbox e fare clic su " Salva Impostazioni nella cartella "

example

Come posso spegnere tutto questo per favore !? E non vedo cosa fai nelle preferenze di sistema :-(
Queste sono le preferenze di iTerm2.Quell'app ha specificamente un'opzione per la posizione delle preferenze.Come puoi sincronizzare le preferenze di qualsiasi app?
Non sono a conoscenza di alcun metodo generico per sincronizzare le preferenze delle app per _ALL_ app installate.Potresti provare hack di collegamento simbolico o altre idee presentate qui.Sfortunatamente, queste soluzioni possono essere piuttosto fragili. Ho ottenuto ottimi risultati sincronizzando le impostazioni quando si utilizza la funzionalità specifica dell'applicazione incorporata (fornita dal fornitore dell'applicazione) o tramite plug-in specifici dell'applicazione di terze parti. ITerm2, VSCode e Sublime Text sono ottimi esempi di app che lo fanno.
Brethil
2014-11-27 03:27:19 UTC
view on stackexchange narkive permalink

È possibile impostare un elemento di azione cartella che monitora le cartelle pertinenti ed esegue un Applescript che copia i file delle preferenze pertinenti nella cartella Dropbox quando la cartella cambia.

Un altro approccio (simile) sarebbe la scrittura un agente di lancio:

  <? 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>Label< / key> <string>com.yourname.yourapp< / string> <key>Program< / key> <string> / Users / nomeutente / path / to / your / script< / string> <key>ProgramArguments< / key> <array> <string>scri pt< / string> < / array> <key>WatchPaths< / key> <array> <string> / path / to / preferencefile1.plist< / string> <string> / path / to / preferencefile2.plist< / string> < / array> < / dict> < / plist>  

Salvalo come file com.yourname.yourapp.plist quindi copialo in ~ / Library / LaunchAgents /. Caricalo in launchd usando

  launchctl load ~ / Library / LaunchAgents / com.yourname.yourapp.plist  

avvia: launchctl start com.yourname. yourapp

Ora l'agente launchd eseguirà lo script / Users / tuonome / percorso / al / tuo / script ogni volta che "preferenzafile1.plist", "preferenzafile2.plist" e così via vengono modificati.

Ad esempio "script" potrebbe essere qualcosa che copia i file delle preferenze nella cartella della casella personale.

Un altro agente di avvio dovrebbe essere impostato sull'altra macchina per monitorare i file nella cartella della casella personale e copiarli in la posizione corretta quando cambiano.

Mikel Manitius
2018-01-17 04:12:43 UTC
view on stackexchange narkive permalink

Confermando che la risposta di Kevin sopra funziona anche tramite la sincronizzazione di iCloud Drive in High Sierra.

Ho fatto quanto segue:

  1. Crea una cartella chiamata "Sync" direttamente in iCloud Drive (come fratello a Documenti)
  2. Crea un'altra cartella chiamata iTerm2 all'interno di Sync (presumibilmente lo farò con altre app, da cui la struttura delle cartelle)
  3. Punta iTerm2 lì tramite le sue Preferenze.Ti chiederà se vuoi per posizionare una copia corrente del file plist lì.
  4. Ripeti il passaggio n. 3 su tutti gli altri sistemi in cui desideri utilizzare iTerm2

Tieni presente che può esserci una certa latenza con la sincronizzazione di iCloud Drive, ma funziona.

J. Trideka
2014-06-13 19:52:05 UTC
view on stackexchange narkive permalink

Un altro modo, che sarebbe utile per altri tipi di file o altri programmi, è usare collegamenti fisici invece di quelli simbolici. Usa "ln" invece di "ln -s". Attenzione: un collegamento fisico è molto diverso da un simbolico. Un collegamento simbolico è solo un puntatore al file. È possibile eliminare il collegamento e il file non viene modificato. Un collegamento fisico è una voce duplicata per il file nella directory del disco. È come se il file fosse davvero in due posti contemporaneamente. Un programma non può dire alcuna differenza tra i due. Se metti nel cestino il collegamento, il file effettivo viene eliminato. Questi sono così diversi che probabilmente non avrebbe dovuto essere usato lo stesso nome per entrambi.

Un programma che apre un file non è in grado di distinguere tra un collegamento fisico e uno software


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...