Isso responde à pergunta mais específica do seu comentário à sua pergunta original. Provavelmente poderia ter sido uma pergunta nova, pois é muito mais específica.
Para definir o "Rótulo de cores" dos arquivos selecionados no momento, você pode combinar um programa AppleScript (ou um programa shell que usa osascript ) com qualquer uma das inúmeras aplicações "iniciadoras" (Quicksilver, FastScripts, etc.) que podem executar o AppleScript programas (ou programas shell) com base em uma combinação de teclas de atalho.
Para qualquer um dos scripts abaixo, cole-os no Editor de scripts / Editor de AppleScript e salve-os no formato "script" (ou qualquer outro formato usado pelo iniciador escolhido). O local usual para esses scripts salvos seria ~ / Library / Scripts / Applications / Finder, mas, dependendo do seu iniciador, você poderá usar outros locais.
Aqui está uma versão simples que você pode codificar para qualquer um dos rótulos:
on run
tell application "Finder"
repeat with anItem in (get selection)
(*
* 0 - none
* 1 - Orange
* 2 - Red
* 3 - Yellow
* 4 - Blue
* 5 - Purple
* 6 - Green
* 7 - Gray
*)
set label index of anItem to 4
end repeat
end tell
end run
Se você tiver apenas alguns rótulos em uso, salve algumas cópias e vincule uma chave a cada cópia.
Aqui está uma versão que sempre solicita a qual etiqueta aplicar:
on run
tell application "Finder" to set selectedItems to selection
if length of selectedItems is 0 then
display dialog "Select some items in Finder before running this program." with title "Apply Finder Label to Selected Items" buttons {"OK"} default button {"OK"}
return
end if
set labels to prependIndicies(getLabelNames())
set default to first item of labels
set labelIndex to choose from list labels default items default with prompt "Choose label to apply to selected items" without empty selection allowed and multiple selections allowed
if labelIndex is false then return
set labelIndex to (first word of first item of labelIndex) as number
tell application "Finder"
repeat with anItem in selectedItems
set label index of anItem to labelIndex
end repeat
end tell
end run
to getLabelNames()
set labelNames to {"Orange", "Red", "Yellow", "Blue", "Purple", "Green", "Gray"}
set useCustomLabelNames to true -- change to false if this is too slow or does not work for you
if useCustomLabelNames then
set cmds to {}
repeat with i from 1 to 7
set end of cmds to "defaults read com.apple.Labels Label_Name_" & (8 - i) & " || echo " & quoted form of item i of labelNames
end repeat
set text item delimiters to {";"}
set labelNames to paragraphs of (do shell script (cmds as text))
end if
end getLabelNames
to prependIndicies(theList)
repeat with i from 1 to length of theList
set item i of theList to (i as text) & " - " & (item i of theList)
end repeat
{"0 - none"} & theList
end prependIndicies
Quando a caixa de diálogo aparecer, digite um de 0 a 7 para selecionar um rótulo e pressione Retornar para aplicá-lo aos itens selecionados no Finder.