Desktop search: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
(18 intermediate revisions by the same user not shown)
Line 5: Line 5:
== full text and filename search ==
== full text and filename search ==
電腦的多個檔案的內文搜尋
電腦的多個檔案的內文搜尋
* {{Gd}} [http://www.copernic.com/ Copernic: Software to search, find, and manage information] v.3.5.1
* [http://www.think-less-do-more.com/avafind/ Ava Find]
** range: drive only, could not specific folder {{exclaim}}
 
* [http://www.copernic.com/ Copernic: Software to search, find, and manage information] v.3.5.1 on {{Win}}
** range: folders and file types you specified
** range: folders and file types you specified
** refine the search: file name, file type, file size, date, folder. '''Quotation marks''' is available. More on [http://help.copernic.com/topic/desktopsearch21en/use/search/boolean.htm Refine a search with operators]
** refine the search: file name, file type, file size, date, folder. '''Quotation marks''' is available. More on [http://help.copernic.com/topic/desktopsearch21en/use/search/boolean.htm Refine a search with operators]
** comment: Nice for searching PHP scripts {{Gd}}
** comment: Nice for searching PHP scripts {{Gd}}
* [http://www.think-less-do-more.com/avafind/ Ava Find]
** range: drive only, could not specific folder {{exclaim}}


* [http://sourceforge.net/projects/docfetcher/ DocFetcher] ver. 1.1 beta 6 ([http://jdev.tw/blog/819/docfetcher-cross-platform-desktio-search 經常找不到文件嗎?試試免費的跨平台桌面搜尋工具:DocFetcher | 簡睿隨筆@新世界])
* [http://sourceforge.net/projects/docfetcher/ DocFetcher] ver. 1.1 beta 6 ([http://jdev.tw/blog/819/docfetcher-cross-platform-desktio-search 經常找不到文件嗎?試試免費的跨平台桌面搜尋工具:DocFetcher | 簡睿隨筆@新世界])
Line 33: Line 33:
* ''$'' [https://www.dropbox.com/help/6635 How can I use full-text search to search the contents of my files? (Dropbox Help Center)]
* ''$'' [https://www.dropbox.com/help/6635 How can I use full-text search to search the contents of my files? (Dropbox Help Center)]


=== Search text in plain text files ===
 
=== Search text in multiple plain text files ===
==== by solution ====
==== by solution ====
* {{Gd}} [http://www.wingrep.com/ Windows Grep: Grep for Windows] v.2.3 {{Win}}
* {{Gd}} [http://www.wingrep.com/ Windows Grep: Grep for Windows] v.2.3 {{Win}}
Line 44: Line 45:
** Regular expression: supported<ref>[http://docs.sublimetext.info/en/latest/search_and_replace/search_and_replace_overview.html Search and Replace — Sublime Text Unofficial Documentation]</ref><ref>[http://www.boost.org/doc/libs/1_47_0/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html Perl Regular Expression Syntax - 1.47.0]</ref>
** Regular expression: supported<ref>[http://docs.sublimetext.info/en/latest/search_and_replace/search_and_replace_overview.html Search and Replace — Sublime Text Unofficial Documentation]</ref><ref>[http://www.boost.org/doc/libs/1_47_0/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html Perl Regular Expression Syntax - 1.47.0]</ref>
** refine the search: file name, file type (separated by , symbol, ex: {{kbd | key= *.html, *.htm}} to search the text in the html and htm file types) , folder。 Menu -> Find -> Find in files -> Where: Add include filters<ref>[http://www.sublimetext.com/forum/viewtopic.php?f=3&t=5803 Sublime Forum • View topic - Find in Files of Filetype]</ref>
** refine the search: file name, file type (separated by , symbol, ex: {{kbd | key= *.html, *.htm}} to search the text in the html and htm file types) , folder。 Menu -> Find -> Find in files -> Where: Add include filters<ref>[http://www.sublimetext.com/forum/viewtopic.php?f=3&t=5803 Sublime Forum • View topic - Find in Files of Filetype]</ref>
* {{Gd}} Grep command for {{linux}} <ref>[http://www.cyberciti.biz/faq/howto-search-find-file-for-text-string/ Finding a File containing a particular text string in Linux server]</ref><ref>[http://www.computerhope.com/unix/ugrep.htm Linux and Unix grep command help and examples]</ref>
** multiple files: {{kbd | key=<nowiki>grep -ir "string to search" /path/to/directory</nowiki>}}<ref>options (1) -i, which means ignore case (2) -r means search recursively through an entire directory tree including the sub directory [http://www.linfo.org/grep.html How to use the grep command, by The Linux Information Project (LINFO)]</ref>
** multiple files: {{kbd | key=<nowiki>find *.json | xargs grep -E "詐騙|詐欺" -sl</nowiki>}} to find json files which its content contains the string {{kbd | key=<nowiki>詐騙</nowiki>}} or {{kbd | key=<nowiki>詐欺</nowiki>}}. more on [[Search for string in json files]]
** single file: {{kbd | key=<nowiki>grep "string to search" /path/to/file</nowiki>}} ex: keyin {{kbd | key=grep avc /var/log/messages}} to find the SELinux log messages<ref>[http://wiki.centos.org/HowTos/SELinux HowTos/SELinux - CentOS Wiki] / [http://wiki.centos.org/zh-tw/HowTos/SELinux zh-tw/HowTos/SELinux - CentOS Wiki](in Mandarin Chinese) </ref>


* [https://zh-tw.emeditor.com/  EmEditor] ''$''
* [https://zh-tw.emeditor.com/  EmEditor] ''$''
Line 56: Line 62:
** comment: If there are too many matches, the software will be frozen and get back after some minutes. {{exclaim}}
** comment: If there are too many matches, the software will be frozen and get back after some minutes. {{exclaim}}


* [http://notepad-plus-plus.org/ Notepad++] v5.9.8<ref>[http://npp-community.tuxfamily.org/documentation/notepad-user-manual/searching/searching-files Searching in Files]</ref>
* [http://notepad-plus-plus.org/ Notepad++] v7.4.2<ref>[http://npp-community.tuxfamily.org/documentation/notepad-user-manual/searching/searching-files Searching in Files]</ref>
** big file search: file size (1) > 90 MB: ok; (2) > 200MB: not ok {{exclaim}} (file is too big to be opened by Notepad++)
** big file search: file size < 600 MB: ok<ref>[https://errerrors.blogspot.com/2017/11/notepad-file-is-too-big-to-be-opened.html 解決 Notepad++ 開啟大檔案遇到「file is too big to be opened」錯誤訊息]</ref>
** Regular expression: supported
** Regular expression: supported
** refine the search: file name, file type (separated by ; symbol, ex: {{kbd | key= *.html; *.htm}} to search the text in the html and htm file types) , folder
** refine the search: file name, file type (separated by ; symbol, ex: {{kbd | key= *.html; *.htm}} to search the text in the html and htm file types) , folder
Line 71: Line 77:
** refine the search:
** refine the search:
** instruction:<ref> [http://ithelp.ithome.com.tw/questions/10183490 如何編寫批次檔讓我可以抓取TXT檔中的某個字串 - iT 邦幫忙::一起幫忙解決難題,拯救 IT 人的一天]</ref>
** instruction:<ref> [http://ithelp.ithome.com.tw/questions/10183490 如何編寫批次檔讓我可以抓取TXT檔中的某個字串 - iT 邦幫忙::一起幫忙解決難題,拯救 IT 人的一天]</ref>
* Grep command for {{linux}} <ref>[http://www.cyberciti.biz/faq/howto-search-find-file-for-text-string/ Finding a File containing a particular text string in Linux server]</ref>
** multiple files: {{kbd | key=<nowiki>grep -ir "string to search" /path/to/directory</nowiki>}}<ref>options (1) -i, which means ignore case (2) -r means search recursively through an entire directory tree including the sub directory [http://www.linfo.org/grep.html How to use the grep command, by The Linux Information Project (LINFO)]</ref>
** single file: {{kbd | key=<nowiki>grep "string to search" /path/to/file</nowiki>}} ex: keyin {{kbd | key=grep avc /var/log/messages}} to find the SELinux log messages<ref>[http://wiki.centos.org/HowTos/SELinux HowTos/SELinux - CentOS Wiki] / [http://wiki.centos.org/zh-tw/HowTos/SELinux zh-tw/HowTos/SELinux - CentOS Wiki](in Chinese) </ref>


template (left blank intentionally)
template (left blank intentionally)
Line 85: Line 87:


==== by logical operators ====
==== by logical operators ====
'''OR''': match the lines which contains ''pattern1'' OR ''pattern2''<ref>[http://www.linuxquestions.org/questions/linux-newbie-8/logical-operators-in-grep-775595/ logical operators in grep]</ref>
'''OR''': match the lines which contains ''pattern1'' OR ''pattern2''<ref>[http://www.linuxquestions.org/questions/linux-newbie-8/logical-operators-in-grep-775595/ logical operators in grep]</ref><ref>[http://www.thegeekstuff.com/2011/10/grep-or-and-not-operators/ 7 Linux Grep OR, Grep AND, Grep NOT Operator Examples]</ref>
* {{kbd | key = <nowiki>awk '/pattern1|pattern2/' file_name </nowiki>}} for {{Linux}}
* {{kbd | key = <nowiki>awk '/pattern1|pattern2/' file_name </nowiki>}} for {{Linux}}
* {{kbd | key = <nowiki>grep 'pattern1\|pattern2' file_name </nowiki>}}
* {{kbd | key = <nowiki>grep 'pattern1\|pattern2' file_name </nowiki>}}
* {{kbd | key = <nowiki>grep -E 'pattern1|pattern2' file_name </nowiki>}}
* {{kbd | key = <nowiki>grep -E 'pattern1|pattern2' file_name </nowiki>}}
* {{kbd | key = <nowiki>cat file_name | grep -E 'pattern1|pattern2'</nowiki>}}


'''AND''': match the lines which contains ''pattern1'' AND ''pattern2''  
'''AND''': match the lines which contains ''pattern1'' AND ''pattern2''  
* {{kbd | key = <nowiki>awk '/pattern1/&&/pattern2/' file_name </nowiki>}} for {{Linux}}
* {{kbd | key = <nowiki>awk '/pattern1/&&/pattern2/' file_name </nowiki>}} for {{Linux}}
* {{kbd | key = <nowiki>grep -E 'pattern1.*pattern2|pattern2.*pattern1' file_name </nowiki>}}  {{exclaim}} order dependent
* {{kbd | key = <nowiki>grep -E 'pattern1.*pattern2|pattern2.*pattern1' file_name </nowiki>}}  {{exclaim}} order dependent
 
* {{kbd | key = <nowiki>cat file_name | grep -E 'pattern1.*pattern2|pattern2.*pattern1' </nowiki>}}  {{exclaim}} order dependent


=== Search text in single plain text file ===
=== Search text in single plain text file ===
Search text in a file
Search text in a file
* grep command: {{kbd | key= grep ''keyword'' /path/to/file}}  ({{Linux}})
* [https://www.computerhope.com/unix/ugrep.htm Linux grep command]:
** case insensitive<ref>[http://droptips.com/using-grep-and-ignoring-case-case-insensitive-grep Using grep and Ignoring Case (Case Insensitive grep)]</ref>: Using {{kbd | key=<nowiki>grep -i keyword /path/to/file</nowiki>}}  ({{Linux}}) or enclose it in double quotes if the keywords contains spaces {{kbd | key=<nowiki>grep -i "keywords contains space" /path/to/file</nowiki>}}
** case sensitive: {{kbd | key=<nowiki>grep keyword /path/to/file</nowiki>}}  ({{Linux}})
** show several surrounding lines: {{kbd | key=<nowiki>grep -C 2 keyword /path/to/file</nowiki>}} to show 2 lines before and 2 lines after<ref>[https://stackoverflow.com/questions/9081/grep-a-file-but-show-several-surrounding-lines search - grep a file, but show several surrounding lines? - Stack Overflow]</ref>. ({{Linux}})
 
* vim: (1)[http://www.tuxfiles.org/linuxhelp/vimcheat.html vim] <nowiki>[options]</nowiki> ''filename'' (2)press {{kbd | key= /keyword}}  ({{Linux}})
* vim: (1)[http://www.tuxfiles.org/linuxhelp/vimcheat.html vim] <nowiki>[options]</nowiki> ''filename'' (2)press {{kbd | key= /keyword}}  ({{Linux}})
* cat & grep: {{kbd | key= cat /path/to/file <nowiki>|</nowiki> grep ''keyword''}}: keyword is case sensitive  ({{Linux}})<ref>[https://www.digitalocean.com/community/tutorials/using-grep-regular-expressions-to-search-for-text-patterns-in-linux#regular-expressions Using Grep &amp; Regular Expressions to Search for Text Patterns in Linux | DigitalOcean]</ref>
** big file search:
** Regular expression: supported
** refine the search:


Search text in a compressed text file
* cat & grep: {{kbd | key= cat /path/to/file <nowiki>|</nowiki> grep ''keyword''}} ({{Linux}})<ref>[https://www.digitalocean.com/community/tutorials/using-grep-regular-expressions-to-search-for-text-patterns-in-linux#regular-expressions Using Grep &amp; Regular Expressions to Search for Text Patterns in Linux | DigitalOcean]</ref>
** case insensitive: Using {{kbd | key=<nowiki> cat /path/to/file | grep -i keyword</nowiki>}}  ({{Linux}}) or enclose it in double quotes if the keywords contains spaces {{kbd | key=<nowiki>cat /path/to/file | grep -i "keywords contains space"</nowiki> }} e.g. Keyin {{kbd | key=<nowiki>cat log.txt | grep -i error</nowiki>}} to matched the line contains ''error'' or ''Error'' in the file ''log.txt''.
** case sensitive: {{kbd | key=<nowiki>cat /path/to/file | grep keyword</nowiki>}} ({{Linux}})
 
other issues
* big file search:
* Regular expression: supported
* refine the search:
 
=== Search text in multiple compressed files ===
* Switch to the folder & keyin the command {{kbd | key=<nowiki>find  . -name "error*.gz" | xargs zcat | grep "pattern"</nowiki>}} to search the {{kbd | key=<nowiki>error*.gz</nowiki>}} files contains specified pattern <ref>[https://stackoverflow.com/questions/1253816/find-string-inside-a-gzipped-file-in-a-folder linux - find string inside a gzipped file in a folder - Stack Overflow]</ref>
 
=== Search text in a compressed text file ===
* zcat & grep: {{kbd | key= cat /path/to/compressed_text.gz <nowiki>|</nowiki> grep ''keyword''}}  ({{Linux}})<ref>[http://www.cyberciti.biz/faq/unix-linux-cat-gz-file-command/ Unix / Linux: cat .GZ Compressed Text File On Screen]</ref>
* zcat & grep: {{kbd | key= cat /path/to/compressed_text.gz <nowiki>|</nowiki> grep ''keyword''}}  ({{Linux}})<ref>[http://www.cyberciti.biz/faq/unix-linux-cat-gz-file-command/ Unix / Linux: cat .GZ Compressed Text File On Screen]</ref>


== file name or folder name search ==
== file name or folder name search ==
搜尋範圍(1)資料夾名稱 與 (2)檔案名稱
搜尋範圍(1)資料夾名稱 與 (2)檔案名稱


{{Gd}} [http://www.voidtools.com/ Everything Search Engine]([http://support.voidtools.com/everything/Main_Page official wiki]) version 3.1.4
{{Gd}} [http://www.voidtools.com/ Everything Search Engine]([http://support.voidtools.com/everything/Main_Page official wiki]) version 3.1.4
* 搜尋: 支援輸入部分字串 {{Gd}} ,輸入 studi* 可以找到 studio ,詳[http://support.voidtools.com/everything/Searching Searching]。
* 搜尋: 支援輸入部分字串 {{Gd}} ,輸入 studi* 可以找到 studio ,詳 [http://support.voidtools.com/everything/Searching Searching]。
* 媒體: 電腦本地磁碟(local NTFS volumes),不包含網路磁碟。{{exclaim}}不支援 FAT 格式。  
* 媒體: 電腦本地磁碟(local NTFS volumes),不包含網路磁碟。{{exclaim}}不支援 FAT 格式。  
* 可當server
* 可當 server
* 縮小範圍: 可排除特定檔案類型或者特定目錄,不在索引範圍內。
* 縮小範圍: 可排除特定檔案類型或者特定目錄,不在索引範圍內。
* 教學: [http://playpcesor.blogspot.com/2009/02/everything-firefox.html 如何讓 Everything 從遠端電腦搜尋下載本機檔案?並整合到 Firefox 搜尋列? | 電腦玩物],  [http://nelson.pixnet.net/blog/post/22305963 Everything - 最快的檔名搜尋工具 @ Nelson 不知不覺升上國二了]
* 教學:  
** [http://playpcesor.blogspot.com/2009/02/everything-firefox.html 如何讓 Everything 從遠端電腦搜尋下載本機檔案?並整合到 Firefox 搜尋列? | 電腦玩物],   
** [http://nelson.pixnet.net/blog/post/22305963 Everything - 最快的檔名搜尋工具 @ Nelson 不知不覺升上國二了]
** [https://ez3c.tw/1524 Everything 1.4.1.965 檔案搜尋的速度極限在哪裡?試了就知道 :: 哇哇3C日誌]




Line 143: Line 160:
* 搜尋: (1)可輸入部分字串,例如輸入 appl 可以找到 apple。 (2)不支援輸入 wildcard (*)
* 搜尋: (1)可輸入部分字串,例如輸入 appl 可以找到 apple。 (2)不支援輸入 wildcard (*)
* 縮小範圍: 可預先設定排除特定目錄
* 縮小範圍: 可預先設定排除特定目錄
尋找特定檔案類型的檔案
* {{Win}} {{kbd | key=<nowiki>dir <路徑><檔案類型> /b/s</nowiki>}} 例如: {{kbd | key=<nowiki>dir C:\Users\*.zip /b/s</nowiki>}}<ref>[https://www.computerhope.com/dirhlp.htm MS-DOS dir command help]</ref>
* {{Linux}} {{kbd | key=<nowiki>ls -R <路徑> | grep <檔名規則></nowiki>}} {{kbd | key=<nowiki>ls -R /home | grep \/zip$</nowiki>}}<ref>[https://stackoverflow.com/questions/1447625/list-files-with-certain-extensions-with-ls-and-grep bash - List files with certain extensions with ls and grep - Stack Overflow]</ref>


----
----

Revision as of 19:11, 9 March 2021

Ψ 個人知識管理的搜尋任務類型: 電腦檔案或內文搜尋 | 多個PDF檔案的內文搜尋 | 自訂搜尋服務(網頁歸檔) | Gmail搜尋 Ψ


List of desktop search software

full text and filename search

電腦的多個檔案的內文搜尋

  • Ava Find
    • range: drive only, could not specific folder Icon_exclaim.gif

cloud services


Search text in multiple plain text files

by solution

  • Good.gif Sublime Text v.2
    • big file search:
    • Regular expression: supported[2][3]
    • refine the search: file name, file type (separated by , symbol, ex: *.html, *.htm to search the text in the html and htm file types) , folder。 Menu -> Find -> Find in files -> Where: Add include filters[4]
  • Good.gif Grep command for Linux Os linux.png [5][6]
    • multiple files: grep -ir "string to search" /path/to/directory[7]
    • multiple files: find *.json | xargs grep -E "詐騙|詐欺" -sl to find json files which its content contains the string 詐騙 or 詐欺. more on Search for string in json files
    • single file: grep "string to search" /path/to/file ex: keyin grep avc /var/log/messages to find the SELinux log messages[8]
  • grepWin v1.5.6.x
    • big file search: file size (1) > 90 MB: ok; (2) > 200MB: ok;
    • Regular expression: supported
    • refine the search:
    • comment: If there are too many matches, the software will be frozen and get back after some minutes. Icon_exclaim.gif
  • Notepad++ v7.4.2[9]
    • big file search: file size < 600 MB: ok[10]
    • Regular expression: supported
    • refine the search: file name, file type (separated by ; symbol, ex: *.html; *.htm to search the text in the html and htm file types) , folder
  • Grep for Windows Win Os windows.png CLI
    • big file search:
    • Regular expression:
    • refine the search:
  • Findstr command Win Os windows.png
    • big file search:
    • Regular expression:
    • refine the search:
    • instruction:[11]

template (left blank intentionally)

* software name
** big file search:
** Regular expression:
** refine the search:

by logical operators

OR: match the lines which contains pattern1 OR pattern2[12][13]

  • awk '/pattern1|pattern2/' file_name for Linux Os linux.png
  • grep 'pattern1\|pattern2' file_name
  • grep -E 'pattern1|pattern2' file_name
  • cat file_name | grep -E 'pattern1|pattern2'

AND: match the lines which contains pattern1 AND pattern2

  • awk '/pattern1/&&/pattern2/' file_name for Linux Os linux.png
  • grep -E 'pattern1.*pattern2|pattern2.*pattern1' file_name Icon_exclaim.gif order dependent
  • cat file_name | grep -E 'pattern1.*pattern2|pattern2.*pattern1' Icon_exclaim.gif order dependent

Search text in single plain text file

Search text in a file

  • Linux grep command:
    • case insensitive[14]: Using grep -i keyword /path/to/file (Linux Os linux.png ) or enclose it in double quotes if the keywords contains spaces grep -i "keywords contains space" /path/to/file
    • case sensitive: grep keyword /path/to/file (Linux Os linux.png )
    • show several surrounding lines: grep -C 2 keyword /path/to/file to show 2 lines before and 2 lines after[15]. (Linux Os linux.png )
  • vim: (1)vim [options] filename (2)press /keyword (Linux Os linux.png )
  • cat & grep: cat /path/to/file | grep keyword (Linux Os linux.png )[16]
    • case insensitive: Using cat /path/to/file | grep -i keyword (Linux Os linux.png ) or enclose it in double quotes if the keywords contains spaces cat /path/to/file | grep -i "keywords contains space" e.g. Keyin cat log.txt | grep -i error to matched the line contains error or Error in the file log.txt.
    • case sensitive: cat /path/to/file | grep keyword (Linux Os linux.png )

other issues

  • big file search:
  • Regular expression: supported
  • refine the search:

Search text in multiple compressed files

  • Switch to the folder & keyin the command find . -name "error*.gz" | xargs zcat | grep "pattern" to search the error*.gz files contains specified pattern [17]

Search text in a compressed text file

  • zcat & grep: cat /path/to/compressed_text.gz | grep keyword (Linux Os linux.png )[18]

file name or folder name search

搜尋範圍(1)資料夾名稱 與 (2)檔案名稱

Good.gif Everything Search Engine(official wiki) version 3.1.4


Locate32

  • 搜尋:
  • 縮小範圍:

Listary - Free Search Utility | Windows Explorer Search | Text Editing

Total Commander v7.56a

  • 搜尋:
  • 縮小範圍: 可指定多個資料夾,路徑可用 ; 符號間隔

Where Is It? - "Catalog your media collection, use descriptions, thumbnails and categories, find files or disks you need"

  • 搜尋:
  • 縮小範圍:
  • 其他: 無法將「網路磁碟」納入索引範圍

Wise JetSearch - Fast Local File Search Tool - Search Everything v.1.24.65 (Wise JetSearch 1.24 免安裝中文版 - 取代Windows內建搜尋功能 - 阿榮福利味)

  • 搜尋: 支援輸入部分字串 Good.gif ,輸入 * 或 ? 符號。例如: studi? 可以找到 studio。詳Wise JetSearch Online Help Center
  • 媒體: 電腦本地磁碟,支援NTFS, FAT 格式。
  • 縮小範圍: 無法排除特定檔案類型或者特定目錄,在索引範圍內。

Finder for Mac icon_os_mac.png

  • 搜尋: (1)可輸入部分字串,例如輸入 appl 可以找到 apple。 (2)不支援輸入 wildcard (*)
  • 縮小範圍: 可預先設定排除特定目錄

尋找特定檔案類型的檔案

  • Win Os windows.png dir <路徑><檔案類型> /b/s 例如: dir C:\Users\*.zip /b/s[19]
  • Linux Os linux.png ls -R <路徑> | grep <檔名規則> ls -R /home | grep \/zip$[20]

軟體名稱 (left blank intentionally)

  • 搜尋: (1)是否支援輸入部分字串 (2)是否支援輸入 wildcard
  • 縮小範圍:

quick file search filter under a folder: file name or folder name

quick file search filter: file name only

Search text in files (cloud solution)

full text searching

file name or folder name searching only

references

further reading