Você pode usar as seguintes funções de linha de comando para localizar e abrir rapidamente o arquivo relevante. Acho isso mais fácil do que digitar uma longa string de consulta 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
ou abra uma nova função de carga do 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 prefixar ou anexar *
à sua consulta como o padrão de pesquisa, '*$1*'
já marca a entrada de curingas no início e no final de sua consulta. cd
adicional é para maiúsculas e minúsculas e ignorar marcas diacríticas, por exemplo, fred
retornará ambos, Frédéric e FrEDeric.
findpaper
restringirá a pesquisa a resultados em um caminho específico (recursivo), enquanto openpaper pie*201
abrirá um resultado de pesquisa (ou primeiro de vários resultados) ou openpaper pie*201 3
abrirá a terceira entrada de resultado. Para evitar a abertura de scripts bash ou outros arquivos que não sejam documentos, 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 link para usar outros operadores de pesquisa.