Ho un file plist e sono interessato a recuperare i valori dai dizionari nidificati utilizzando lo script della shell. Ecco la struttura del mio file plist:
<dict>
<key>Countries</key>
<dict>
<key>USA</key>
<dict>
<key>Capital</key>
<string>Washington DC</string>
<key>Continent</key>
<string>North America</string>
</dict>
<key>Italy</key>
<dict>
<key>Capital</key>
<string>Rome</string>
<key>Continent</key>
<string>Europe</string>
</dict>
</dict>
</dict>
Sono interessato a recuperare il valore assegnato alla chiave "Capitale" se l'utente fornisce un nome di Paese.
Ad esempio, se eseguo il comando seguente, ottengo i dati completi nel dizionario "Paesi".
defaults read "/Users/sameerp/Downloads/data" Countries 2>&1
Ottengo il seguente output:
{
Italy = {
Capital = Rome;
Continent = Europe;
};
USA = {
Capital = "Washington DC";
Continent = "North America";
};
}
Come posso modificare il comando sopra per passare la chiave "Country" (USA per es.) E recuperare il valore per la chiave "Capital"