Everything使用指南
http://xbeta.info/everything-search-tool.htm
Everything(官網|中文主頁|教程)是速度最快的檔名搜尋軟體。其速度之快令人震驚,百G硬碟幾十萬個檔案,可以在幾秒鐘之內完成索引;檔名搜尋瞬間呈現結果。它小巧免費,支援中文,支援正則表示式,可以通過HTTP或FTP分享搜尋結果。如果不滿意Windows自帶的搜尋工具、Total Commander的搜尋、Google 桌面搜尋或百度硬碟搜尋,如果正在使用或放棄了Locate32,都值得推薦這款體積小巧、免安裝、免費、速度極快(比Locate32更快)的檔案搜尋工具Everything!
【相關連結】英文主頁
一、Everything簡介 ↗
Everything是voidtools(中文主頁)開發的一款檔案搜尋工具,官網描述為“基於名稱實時定位檔案和目錄(Locate files and folders by name instantly)”。它體積小巧,介面簡潔易用,快速建立索引,快速搜尋,同時佔用極低的系統資源,實時跟蹤檔案變化,並且還可以通過http或ftp形式分享搜尋。
注意:
- 只搜尋檔名,不能搜尋檔案內容;
- 只適用NTFS檔案系統,不適合FAT32;
- 完美支援中文(自V1.2.x開始)。
二、初級教程:Everything的基本用法 ↗
2.1 下載與安裝
2.2 首次執行 ↗
Everything在第一次執行時,會建立索引資料庫。但你絲毫不用擔心,其速度極快,生成的索引檔案極小!看看本文下面的回覆,你會充滿信心。親身體驗之後,你或者也會為其速度震驚。或者,你根本沒感覺到它需要建立索引。
索引之後,簡潔的程式介面呈現在你的面前,程式狀態列中還會顯示索引的檔案數量。看到這個數字,你是否驚奇Everything的神速呢?
2.3 基本搜尋 ↗
儘管Everything還處在英文介面,但這並不影響你的基本使用。只須在搜尋框中,輸入幾個字母或漢字,搜尋結果就會實時呈現在你的眼前。然後,可以直接雙擊某條結果,開啟檔案。也可以直接在結果中進行復制、刪除等常見操作。
2.4 切換為中文介面 ↗
- 下載:xbeta簡中語言包(連結)(推薦)或官方多語言包(連結);
- 解壓:解壓語言包內的Everything.lng到程式目錄;
- 重啟Everything(如果需要);
- 選單:Tools→ Options→ General→ Language→ 簡體中文。
說明1:官方多語言包 vs xbeta簡中語言包
- 前者包括了簡體中文在內的更多種語言;當然,體積更大。
- 前者的簡體中文,也是來自xbeta的翻譯;
- 據網友反映,前者存在預設識別為日文的bug,所以,推薦xbeta自行釋出的簡中語言包;
- 後者更新更加及時。
說明2:
切換語言後,需要重啟Everything才能看到效果。而點選Everything視窗的關閉按鈕後,它只是縮小為托盤圖示,並沒有真正關閉,所以,要右鍵退出。
3.1 高效搜尋之“與”“或” ↗
技巧:在Everything的搜尋框中可以輸入多個關鍵詞,以空格分開,表示搜尋結果要包括全部關鍵詞。大家肯定對這種做法不會陌生,因為它正是搜尋引擎的慣例。
舉例:鍵入(不包括引號,下同)“李白 北京 08 jpg”,可以快速找出某些照片。
技巧:對應“與”的還有“或”(OR)運算,用半形豎線表示:|。當你不確信關鍵詞的準確描述時,這種方式非常有用。
舉例:“jpg 李白|libai 北京 08”、“免費|freeware”……
引伸:既然空格表示“與”,那麼如何表示真正的空格呢?很簡單,加英文半形引號,比如”program files”。
3.2 正則表示式 ↗
Everything支援正則表示式,或者說,支援一些簡單的正則表示式。但對大多數使用者而言,這已經足夠了!Everything支援的正則表示式有:
| () ? * + . [] [^] ^ $ {m,n}
- | 豎線表示或。例如:gray|grey 能夠匹配 gray或grey(注:在|兩側沒有空格)。
- () 小括號用於確定範圍。例如:gr(a|e)表示在gr和y之間有一個字母a或e。gr(a|e)y將匹配gray或grey,與gray|grey意義相同。
- ? 問號表示其前一個字元可能出現,也有可能不出現。例如:colou?r將匹配color和colour。
- * 星號表示其前一個字元可能不出現,也可能出現一次或多次。例如:ab*c將匹配ac、abc、abbc、abbbc等等。
- + 加號表示其前一個字元出現一次或多次。例如:ab+c將匹配abc、abbc、abbbc等等,但不能匹配ac。
- .點號可用匹配任何單個非新行字元。(事實上,把哪個字元稱之為新行卻是不一定的,可能是編碼特別或位置特別,但是可以肯定的是這個行中一定包含其他字元。)在POSIX括號表示式規則中,點號只匹配一個點。例如:a.c可以匹配abc等等字元,但是[a.c]只匹配a、.、或c。
- [ ] 中括號表示能夠匹配其括號內出現的一個字元。例如:[abc]能夠匹配a、b或c。[a-z]將能夠匹配a到z之間的任意一個字元。[abcx-z]能夠匹配a、b、c、x、y或z,其也可以表示成[a-cx-z]。
- [^ ] [^ ]表示可以匹配任何一個沒有出現在其括號內的字元,與[ ]剛好相反。例如:[^abc]能夠匹配任何一個不是a、b、c的字元。[^a-z]能夠匹配任何一個非小寫字母之外的字元。
- ^ 匹配名稱開始的位置。在以行為基礎的工具中,匹配任意行的開始位置。
- $ 匹配名稱結束的位置,或者匹配字串結尾新行的結束位置。在以行為基礎的工具中,匹配任意行的結束位置。
- {m,n} {m,n}表示其前面的字元至少重複m次,但是重複次數少於n。例如:a{3,5}匹配aaa、aaaa以及aaaaa,但是不能匹配aa或aaaaaa。此表達規則在一些老的版本中不可用。
3.3 指定搜尋範圍 ↗
預設情況下,Everything索引、搜尋所有本地NTFS磁碟的所有目錄。但是你可以通過如下方式,限定搜尋範圍,以得到更易用的結果列表。
- 希望Everything永不索引某個磁碟,請在“選項”-“NTFS磁碟”中,選定相應碟符,取消“搜尋本卷”或“包含在資料庫中”。(注:可以取消前一項,這樣後一項就自動變灰——但沒發現這種做法與只取消後一項的差別。大家可以研究一下!)
- 希望永遠排除某些目錄,可以在“選項”-“排除列表”中設定。和上條方法一樣,確認之後Everything會重新生成索引。
- 希望Everything只搜尋某個目錄,可以在資源管理器或Total Commander中,右擊該目錄,在彈出選單上選“Search Everything…”。這時你會看到Everything的搜尋框中,出現了帶引號的目錄名。(需要在Everything Options的General Tab上選中“Show shell context menu”)
- 與上一方法相同,只是不用右擊目錄,而是直接輸入帶引號的目錄名,再輸入搜尋關鍵詞。需要注意的是:目錄名一定是完整路徑,且用半形雙引號括起來,不能選中“使用正則表示式”。
- 還有一種方法,使用起來要頭腦更清楚才行。比如,設定“匹配路徑”後,輸入 files/ .exe,看看搜到了什麼結果,想想這是為什麼。
3.4 網路分享 ↗
Everything內建了HTTP、ETP/FTP伺服器。這意味著,你可以用它當作簡單的伺服器來用。何況,它的HTTP分享,仍然提供了強大的搜尋功能。
HTTP分享:點選選單“工具”-“HTTP伺服器”後,就可以在瀏覽器訪問 http://localhost 或輸入本機IP進行訪問了。在HTTP中,它的搜尋功能一樣強大。因此,你可以把它加入Firefox等瀏覽器的自定義搜尋中,更加方便的進行搜尋。(可以在Everything Option的Http Tab上進行相關設定)
FTP功能類似,但不具備搜尋功能。
相比而言,因為瀏覽器更為常用,並且支援搜尋,預設的UTF-8編碼識別率更高,所以推薦HTTP方式分享。無論是HTTP還是FTP,其埠、使用者名稱、密碼都是可以設定的。這樣,你就可以在區域網內更放心的分享檔案了。
除了與朋友分享之外,在檔案伺服器上執行Everything,然後使用者就可以通過瀏覽器快速搜尋了。這是一個很好的應用。
四、Everything與其他程式整合 ↗
Everything如此好用,所以很多網友探索了它與其他程式的整合方法,彙總如下。個人觀點是,Everything與TC的整合具有很高實用性;另外幾種整合可供參考和啟發。
4.1 Everything與Total Commander整合 ↗
a. 雙向整合的目標
所謂Everything與Total Commander整合,到底指什麼?善用佳軟的實際使用中,實現瞭如下雙向整合:
① 從TC到Everything:在Total Commander中,按下ctrl+alt+f則開啟Everything進行搜尋;
② 從Everything到TC:在Everything搜尋結果上,雙擊目錄,或在檔案上右鍵選單“開啟路徑”,則Total Commander進入此目錄。需要說明的是,目前TC只能開啟該目錄,但不能自動選中搜索結果。
b. 從TC到Everything的整合方法
依靠自己:“自己動手,豐衣足食”,雖然效率不一定高,但這是最可靠的方法,即利用Total Commander的標準功能呼叫Everything。其實現手段有多種,原理和視訊操作可參見《TC學堂》中《第7講: TC快捷無極限》中相關內容,比如“4. 外部程式化為TC擴充套件命令”。
依靠TC作者:最理想的方案當然是,TC作者針對Everything提供專門的、更優的整合方案。但是,堅持自己原則的Ghisler認為:儘管Everything效率極高,但由於NTFS格式限制,不具有通用性,所以,不會官方整合。
依靠雷鋒叔叔:除了TC作者,你還會期望網路上某個熱心人開發一款相應外掛。果然,俄羅斯網友為TC開發了FSE外掛。優點:可以把搜尋結果輸出到TC的窗口裡面處理。缺點:目前僅支援ASCII字元,即不支援中文。(作者表示,將在 Locate 支援Unicode之後,修復此bug。)所以,最終結論是:中文使用者暫不推薦。
c. 從Everything到TC的整合方法 ↗
這次更新不僅僅是語言包,更重要的是可以支援其他檔案管理器,已經可以和total commander集成了。Everything FAQ有介紹。
我的修改:
explore_folder_command=$exec(“%SystemRoot%explorer.exe” /n,/e,”%1″)
explore_folder_path_command=$exec(“%SystemRoot%explorer.exe” /n,/e,/select,”%1″)
open_folder_path_command=$exec(“d:appwincmdTOTALCMD.EXE” “$parent(%1)”)
open_file_command=$exec(“%1″)
open_folder_command=$exec(“d:appwincmdTOTALCMD.EXE” “%1″)explore部分不用變,保留第二種選擇。需要在tc裡設定只打開一個tc例項,我試過用tc命令列的/o引數來不開啟第二個例項,但是everything不認。
現在雙擊找到的檔案會開啟,雙擊目錄會啟用tc跳到該目錄(如果你想設定在左邊,右邊或者新建一個tab可以嘗試加上tc的命令列引數,不一定能用),右鍵選擇檔案,open path會用tc開啟檔案所在目錄。
再在tc裡或者其他全域性hotkey設定程式裡設定everything的啟用熱鍵就可以了(我不喜歡一直開著,隨用隨啟動並不慢)
需注意的是,上述功能只適用於v1.2.0.323b及以後版本,請檢查你的程式,或下載最新beta版。低版本Everything無法識別上述ini內容,會強行刪除。“在tc裡設定只打開一個tc例項”的做法有2種。一是圖形化操作(推薦):配置 → 操作方式 → 主程式 → 只允許一個TC執行。二是直接在wincmd.ini中的[Configuration]段增加一句 onlyonce=1,並重啟TC。
4.2 Everything代替Windows預設搜尋 ↗
Windows自帶的搜尋程式功能不錯,但速度偏慢。如果你希望把“開始”選單中的搜尋替換為Everything(或其他搜尋軟體),可以用修改工具RerouteXPSearch進行設定。軟體小巧,使用容易,LifeHacker、電腦玩物、小眾軟體先後都有介紹,此處從略。
4.3 Everything與Firefox整合 ↗
因為Everything自帶了HTTP伺服器功能——當然也擁有同樣出色的搜尋功能——因此,可以通過瀏覽器進行本地或網路計算機的搜尋。當然,有一個前提:搜尋目標機上Everything一直開啟並且啟用HTTP伺服器。如果認為輸入網址不方便,也可以整合的到瀏覽器的搜尋框中。比如,Firefox可通過擴充套件Add to Search Bar加入到工具欄的搜尋框引擎(可設定使用者名稱/密碼以保護安全),詳見電腦玩物文章。
五、其他補充
5.1 everything的速度 ↗
Everything搜尋工具的最大優點是速度。其速度不是快,是極快;使用者不是滿意,而是震驚。
第一個快速體現在索引速度。官網稱,1分鐘可索引100萬個檔案。筆者的NTFS檔案系統共40G/近4萬個檔案,第一次啟動時,根本沒有感覺到建立索引需要時間。這種快速,是因為Everything的索引無需逐一掃描硬碟檔案,而是直接讀取NTFS檔案系統的USN日誌。這當然是既省力,又合理的做法。
第二個快速體現在搜尋速度。在搜尋框中鍵入字元後,搜尋結果——或許稱為過濾結果更準確——實時呈現。
總起來看,多篇測評和試用者認為,其速度超過了以前備受好評的Locate32。是否真有這麼快?請各位讀者反饋試用結果。目前收到的反饋都證明了這一點,對有些網友而言,速度已經快到令人震驚,甚至是憤怒了:憑什麼可以這麼快!
5.2 Everything資源佔用 ↗
總起來講,佔用資源很少。
- 從安裝(實際解壓即可)來看,真正需要的只有一個主檔案exe,約0.5MB。
- 索引資料庫極小。筆者60G硬碟,索引檔案0.7MB。
- 佔用記憶體少,筆者使用為7MB。
5.3 Everything資料庫更新 ↗
- 沒有所謂更新頻率的設定,因為更新是自動的。
- 每次重啟Everything,都會自動更新;
- 每次設定Everything(比如設定排除列表)之後,都會自動更新;
- Everything執行時,會實時更新索引資料庫。
5.4 Everything與windows管理員許可權問題
問題1:非管理員使用者,如何使用Everything?
Everything的執行需要管理員許可權[1][2]。但有時出於安全考慮,不應該(或不能)以管理員身份登入Windows。如何解決這一衝突呢?
思路1:許可權法:
“解鈴還須繫鈴人”。如果認為此問題是windows的許可權問題,則需要尋找通用的許可權解決方案。比如:
- Windows系統具備的run as。
- 第3方軟體,如 RunasSpc:方法;
- 第3方軟體,如 CPAU:主頁、方法。
思路2:服務法:
“解鈴還須繫鈴人”。如果認為此問題是Everything的問題,則請到官方論壇搜尋答案、向最新beta版尋求答案。論壇中提到:未來或許可以通過服務來解決。而v1.2.1.451a的更新說明中顯示:此功能已具備(added
service parameters option)。
下載v1.2.1.451a,關閉目前執行的Everything。穩妥起見,不妨也把其他db、xml、ini檔案刪除,即從零開始一個Everything程式。
然後,執行 d:\soft\everything\Everything.exe -install_service ,就會增加Everything對應的服務了。說明:我在WinXP下,試圖以非管理員身份執行 d:\soft\everything\Everything.exe -install_service ,似乎未成功安裝服務——請大家幫助再次確認。
(善用佳軟於2010-03-25再次測試通過,WinXP SP2,Everything v1.2.1.451a)
問題2:
以管理員身份執行Everything後,在搜尋結果中雙擊exe執行其他程式,會繼承管理員許可權。如何避免?
答:
暫無辦法。
問題3:
Win7下面不能自啟動的問題。
答:
不太瞭解,歡迎其他網友補充。
六、結論 ↗
如果你經常需要按照檔名進行快速搜尋,並且磁碟用了NTFS檔案系統,則Everything是首薦工具。如果你需要遠端搜尋其他計算機上的檔案,那麼Everything的伺服器共享功能更為適合。總之,這款不到1MB的搜尋利器,很值得收藏試用。