Domanda

Ho una sceneggiatura bash che si occupa di file in Mac OS X 10.5 e 10.6. Si deve ora accertare se i file sono in un volume locale o un volume AFP remoto. Tutti i punti di montaggio sono in /Volumes su Mac OS X, ma non riesco a vedere alcuna differenza tra i volumi locali e remoti, almeno con ls -al (tranne che per il volume di avvio, che è un link simbolico a /).

C'è un modo per programatically, esp. qualcosa che può essere facilmente chiamato da uno script bash (I davvero non vogliono riscrivere questo in C / Obj-C con le API X-specifici del sistema operativo, se non assolutamente necessario), per determinare la fonte o il tipo di un punto di montaggio? Anche ciò che dispositivo un volume mappato (volumi assumendo montati con mount_afp, mount_smbfs, mount_webdav, ecc, non puntare di nuovo ad un dispositivo in /dev) quindi ho alcuni modo di indovinare se è locale o no?

È stato utile?

Soluzione

Al largo della parte superiore della mia testa, non credo ci sia un'API per esso che è comune tra le piattaforme. Si potrebbe, tuttavia analizzare l'output del comando mount:

~$ mount
/dev/disk0s2 on / (hfs, local, journaled)
devfs on /dev (devfs, local, nobrowse)
map -hosts on /net (autofs, nosuid, automounted, nobrowse)
map auto_home on /home (autofs, automounted, nobrowse)
/dev/disk1s2 on /Users/nknight (hfs, local, nodev, nosuid, journaled, nobrowse)

mount senza argomenti ha all'incirca lo stesso effetto sulla maggior parte dei sistemi * nix-ish, anche se non credo che il formato di output è standardizzato da nessuna parte.


Vi incoraggio a ripensare il tuo approccio, tuttavia. Il punto di filesystem di rete è che le applicazioni non sono tenuti a prendersi cura di loro. Prendere in considerazione la pubblicazione un'altra domanda spiegando che cosa si sta cercando di realizzare in questo modo. Qualcuno probabilmente può offrire una soluzione superiore e più generalizzata.

Altri suggerimenti

Lo pianura

$ mount

comando senza args aggiuntivi ti dicono quello che ti serve?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top