आप प्रासंगिक फ़ाइल को जल्दी खोजने और खोलने के लिए कमांड लाइन फ़ंक्शन का उपयोग कर सकते हैं। मुझे स्पॉटलाइट विंडो में क्वेरी की लंबी स्ट्रिंग टाइप करने से यह आसान लगता है।
में निम्नलिखित कार्य जोड़ें ~/.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}")"
}
अब, या तो source ~/.bash_aliasesएक नया टर्मिनल लोड फ़ंक्शन खोलें। फ़ाइल नाम में कहीं भी शब्द, पाई और 2016 के साथ फ़ाइलों की खोज करने के लिए, करें
spot pie*2016 #or
spot 2016*pie
*खोज पैटर्न के रूप में आपकी क्वेरी को प्रस्तुत करने या संलग्न करने की कोई आवश्यकता नहीं है , '*$1*'पहले से ही आपकी क्वेरी की शुरुआत और अंत में वाइल्ड कार्ड प्रविष्टि को टैग करता है। अतिरिक्त cdमामले के लिए असंवेदनशील है fredऔर उदासीन चिह्नों की अनदेखी करते हुए, उदाहरण के लिए , फ्रैडरिक और फ्रैडरिक दोनों को वापस कर देगा।
findpaperखोज को एक विशिष्ट पथ (पुनरावर्ती) के तहत परिणामों तक सीमित कर देगा, जबकि openpaper pie*201(या कई परिणामों में से पहला) खोज परिणाम openpaper pie*201 3खोलेगा या दूसरी प्रविष्टि प्रविष्टि खोलेगा। बैश स्क्रिप्ट या अन्य गैर-दस्तावेज़ फ़ाइलों को खोलने से बचने के लिए, आप अतिरिक्त खोज विशेषताओं द्वारा फ़ाइल सामग्री को प्रतिबंधित कर सकते हैं। देखें फ़ाइल मेटाडाटा क्वेरी अभिव्यक्ति सिंटैक्स और https://ss64.com/osx/mdfind.html अन्य खोज ऑपरेटर का उपयोग करने के लिए।