Collegamento per espellere tutti i dischi rigidi esterni ma non MobileBackups

3

Finora ho utilizzato il seguente AppleScript per espellere tutte le unità esterne in una sola volta comodamente usando una scorciatoia:

tell application "Finder"
    eject (every disk)
end tell

Questo script è archiviato in /Library/Scripts e ho assegnato un collegamento per attivarlo in FastScripts .

Ma c'è un problema. Quando hai abilitato Backup di Time Machine , OS X monta un volume MobileBackups virtuale in /Volumes per archiviare istantanee locali . Questo volume verrà espulso a fianco di tutti i volumi esterni fisici. Voglio evitare questo, perché ciò impedirà l'esecuzione di istantanee locali (finché non verrà ripristinato al prossimo accesso).

Come posso aggiungere un'eccezione per escludere /Volumes/MobileBackups in AppleScript sopra?

    
posta gentmatt 19.03.2013 - 10:18
fonte

3 risposte

2

Questo codice AppleScript:

tell application "Finder"
    set diskList to the disks
    repeat with mountedDisk in diskList
        if name of mountedDisk is not "MobileBackups" then
            eject mountedDisk
        end if
    end repeat
end tell

espelle tutti i dischi montati tranne quando è denominato MobileBackups , ovvero /Volumes/MobileBackups .

    
risposta data 19.03.2013 - 11:51
fonte
1

L'ho leggermente modificato per fare le esclusioni come set.

set exceptionsList to {"MobileBackups", "startup disk", "home", "net"}
tell application "Finder"
    set diskList to the disks
    repeat with mountedDisk in diskList
        if name of mountedDisk is not in exceptionsList then
            eject mountedDisk
        end if
    end repeat
end tell
    
risposta data 04.01.2015 - 18:49
fonte
1

Puoi invece fare quanto segue:

tell application "Finder"
  eject (every disk whose ejectable is true)
end tell

Se hai montato dischi partizionati, tieni premuto il tasto Tasto "Opzione", esegui lo script, quindi rilascia la chiave una volta terminato.

    
risposta data 01.02.2017 - 18:44
fonte

Leggi altre domande sui tag