Anda dapat menggunakan fungsi perintah berikut untuk menemukan dan membuka file yang relevan dengan cepat. Saya menemukan ini lebih mudah daripada mengetik string panjang query di jendela sorotan.
Tambahkan fungsi berikut di ~/.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}")"
}
Sekarang, source ~/.bash_aliasesbuka atau buka fungsi terminal load baru. Untuk mencari file dengan kata-kata, pie, dan 2016 di mana saja dalam nama file, lakukan
spot pie*2016 #or
spot 2016*pie
Tidak perlu menambahkan atau menambahkan *permintaan Anda sebagai pola pencarian, '*$1*'sudah menandai entri kartu liar di awal dan akhir permintaan Anda. Tambahan cdadalah untuk case sensitif dan mengabaikan tanda diakritik, misalnya, fredakan mengembalikan keduanya, Frédéric dan FrEDeric.
findpaperakan membatasi pencarian untuk hasil di bawah jalur tertentu (rekursif) sementara openpaper pie*201akan membuka (atau pertama dari beberapa hasil) hasil pencarian atau openpaper pie*201 3akan membuka entri hasil ketiga. Untuk menghindari membuka skrip bash atau file non-dokumen lainnya, Anda dapat membatasi konten file dengan atribut pencarian tambahan. Lihat Sintaks Ekspresi Kueri Metadata File dan https://ss64.com/osx/mdfind.html untuk menggunakan operator pencarian lainnya.