Auto-tag cartelle / file rilasciati in una cartella

2

Voglio essere in grado di assegnare automaticamente un tag rosso a qualsiasi cartella / file che è caduto in una cartella seduta sul mio desktop. Ho fatto alcune ricerche su questo e sembra che questo non può essere fatto anche con Automator o Smart Folders, anche se sembra piuttosto semplice.

    
posta Alex Monterville 14.03.2017 - 21:22
fonte

1 risposta

3

Opzione 1: utilizzo di Hazel

Puoi taggare automaticamente cartelle / file rilasciati in una cartella utilizzando il software commerciale Hazel , che secondo il suo sviluppatore Noodlesoft, " guarda le cartelle a cui lo dici, organizzando automaticamente i tuoi file in base alle regole che crei. "

Opzione 2: utilizzo delle azioni cartella

Puoi taggare automaticamente cartelle / file rilasciati in una cartella utilizzando < em> Cartella Azioni funzionalità di macOS . Ho scritto il seguente AppleScript basato in parte su uno degli ActionScript script di default di Apple e in parte su uno script fornito in a discussione nelle comunità di supporto Apple . Ho testato questo script in Mac OS X 10.6.8, 10.9.5 e 10.11.6 e ha funzionato in tutte e tre le versioni di macOS (ma consulta la sezione Avvertenza importante di seguito).

property label_color : {none:0, orange:1, red:2, yellow:3, blue:4, purple:5, green:6, gray:7}
on adding folder items to this_folder after receiving these_items
    tell application "Finder"
        try
            repeat with i from 1 to number of items in these_items
                set this_item to item i of these_items
                set label index of this_item to red of label_color
            end repeat
        end try
    end tell
end adding folder items to

La prima riga dello script, property label_color : {none:0, orange:1, red:2, yellow:3, blue:4, purple:5, green:6, gray:7} , non è realmente necessaria; L'ho appena incluso per mostrare quale numero di indice dell'etichetta corrisponde a ciascun colore. Puoi rimuovere la prima riga e modificare red of label_color in 2 e lo script avrebbe lo stesso effetto.

Ci sono alcuni modi per collegare questo AppleScript ad una cartella come Script d'azione cartella . Un modo è aprire Automator, creare una nuova Azione cartella , aggiungere un'azione Esegui AppleScript e sostituire il contenuto dell'azione Esegui AppleScript con questo script, ma questo non ha funzionato nel mio test. Un altro modo, che ha funzionato nel mio test, è quello di salvare lo script in /Library/Scripts/Folder Action Scripts/ (per l'utilizzo da parte di qualsiasi utente) o in ~/Library/Scripts/Folder Action Scripts/ (solo per l'utente corrente), quindi effettuare le seguenti operazioni:

  1. Nel Finder, Controllo + clic (o tasto destro) su qualsiasi cartella per mostrare il menu contestuale.
  2. Dal menu contestuale, seleziona Impostazione azioni cartella (o Servizi e quindi Impostazione azioni cartella ).
  3. Dalla finestra del prompt, scegli il nome dello script che hai appena salvato.
  4. Controlla l'opzione Abilita azioni cartella nella parte in alto a sinistra della finestra Impostazione azioni cartella , se non è già selezionata.

Avvertenza importante

Tecnicamente, lo script precedente imposta solo il label del file, che non è esattamente lo stesso di un tag , come spiegato da John Siracusa nel suo Ars Technica revisione dell'attuazione dei tag in OS X 10.9 ; tuttavia, in Finder in OS X 10.9 e versioni successive, il risultato dello script precedente sarà indistinguibile da un tag. Lo script precedente funziona nelle versioni di Mac OS X 10.6 o successive.

Uno script di azioni cartella più robusto che imposta un tag rosso e invece di un solo rosso < em> label (anche se, come ho detto, i risultati sono indistinguibili nel Finder) possono essere trovati in AppleScript di seguito.

Lo script indicato di seguito richiede la prima installazione dello strumento tag di James Berry (che richiede OS X 10.9 o versioni successive). Può essere installato facilmente con il gestore pacchetti Homebrew ( brew install tag ) o MacPorts ( sudo port install tag ). Se lo installi con Homebrew, sostituisci /opt/local/bin/tag (che è il percorso MacPorts) con /usr/local/bin/tag (che è il percorso Homebrew) nello script seguente.

on adding folder items to this_folder after receiving these_items
    tell application "Finder"
        try
            repeat with i from 1 to number of items in these_items
                set this_item to item i of these_items
                do shell script "/opt/local/bin/tag --add Red " & quoted form of POSIX path of this_item
            end repeat
        end try
    end tell
end adding folder items to

Un terzo modo per scrivere AppleScript (in OS X 10.9 e versioni successive) è installare un AppleScript / Objective -C Library scritta da Shane Stanley chiamata FileTagsLib e quindi sostituire la riga do shell script nello script sopra con il comando appropriato come descritto nella documentazione FileTagsLib , ma non ho testato questa terza opzione.

    
risposta data 17.04.2017 - 21:30
fonte

Leggi altre domande sui tag