Você pode usar as seguintes funções da linha de comando para localizar e abrir rapidamente o arquivo relevante. Acho isso mais fácil do que digitar uma longa sequência de consultas na janela do Spotlight.
Adicione as seguintes funções em ~/.bash_aliases
.
# find any item matching search query in file name
spot(){
mdfind "kMDItemDisplayName=='*$1*'cd";
}
# restrict to files under (recursive) a specific path
findpaper(){
mdfind -onlyin "/Users/foo/articles" "kMDItemDisplayName=='*$1*'cd";
}
# default to open the first entry unless 2nd positional argument is given
openpaper(){
FILEID=$(printf "%sp" ${2:-1})
open "$(mdfind -name -onlyin "/Users/foo/articles" "kMDItemDisplayName=='*$1*'cd" | sed -n "${FILEID}")"
}
Agora, source ~/.bash_aliases
abra ou abra uma nova função de carregamento de terminal. Para procurar arquivos com palavras, pizza e 2016 em qualquer lugar no nome do arquivo, faça
spot pie*2016 #or
spot 2016*pie
Não há necessidade de anexar ou anexar *
à sua consulta como padrão de pesquisa, '*$1*'
já identifica a entrada de curinga no início e no final da consulta. Adicional cd
é para não fred
diferenciar maiúsculas de minúsculas e ignorar marcas diacríticas, por exemplo, retornará Frédéric e FrEDeric.
findpaper
restringirá a pesquisa aos resultados em um caminho específico (recursivo) enquanto openpaper pie*201
abrirá um (ou primeiro de vários resultados) resultado da pesquisa ou openpaper pie*201 3
abrirá a entrada do terceiro resultado. Para evitar a abertura de scripts bash ou outros arquivos não documentais, você pode restringir o conteúdo do arquivo por atributos de pesquisa adicionais. Consulte Sintaxe de expressão de consulta de metadados de arquivo e https://ss64.com/osx/mdfind.html para usar outros operadores de pesquisa.