เครื่องมือ grep ที่ดีสำหรับ Windows คืออะไร [ปิด]


289

คำแนะนำเกี่ยวกับเครื่องมือgrepสำหรับ Windows? แนวคิดที่ใช้ประโยชน์จากระบบปฏิบัติการ 64 บิต

แน่นอนฉันรู้CygwinและพบPowerGREPด้วย แต่ฉันสงสัยว่ามีอัญมณีที่ซ่อนอยู่หรือไม่

คำตอบ:


204

ตามคำแนะนำในความคิดเห็นที่ผมได้เริ่มต้นใช้grepWinและมันยอดเยี่ยมและฟรี


(ฉันยังเป็นแฟนของPowerGREPแต่ฉันจะไม่ใช้อีกต่อไป)

ฉันรู้ว่าคุณกล่าวแล้ว แต่ PowerGREP เป็นที่น่ากลัว

คุณสมบัติที่ฉันชอบบางประการคือ:

  • คลิกขวาที่โฟลเดอร์เพื่อเรียกใช้ PowerGREP
  • ใช้การแสดงออกปกติหรือข้อความที่แท้จริง
  • ระบุอักขระตัวแทนสำหรับไฟล์ที่จะรวม & ไม่รวม
  • ค้นหาและแทนที่
  • โหมดดูตัวอย่างดีเพราะคุณสามารถตรวจสอบให้แน่ใจว่าคุณกำลังเปลี่ยนสิ่งที่คุณต้องการ

ตอนนี้ฉันรู้แล้วว่าเครื่องมือ grep อื่น ๆ สามารถทำทุกอย่างที่กล่าวมา เป็นเพียงแค่ PowerGREP ที่รวมเอาฟังก์ชั่นทั้งหมดไว้ใน GUI ที่ใช้งานง่ายมาก

จากกลุ่มคนที่ยอดเยี่ยมคนเดียวกันที่นำRegexBuddyมาให้คุณและฉันไม่มีส่วนเกี่ยวข้องใด ๆ (ควรสังเกตว่า RegexBuddy มี grep รุ่นพื้นฐาน (สำหรับ Windows) ด้วยตัวเองและมีค่าใช้จ่ายน้อยกว่า PowerGREP มาก)


โซลูชั่นเพิ่มเติม

คำสั่ง Windows ที่มีอยู่

การใช้งานคำสั่ง Linux บน Windows

เครื่องมือ grep ที่มีส่วนต่อประสานกราฟิก

เครื่องมือ Grep เพิ่มเติม


4
ฉันชอบที่จะหา grep gui โอเพนซอร์ซที่ใช้งานง่าย & มีคุณสมบัติครบถ้วนเหมือนกับ PowerGREP แต่ฉันยังไม่พบ :) ฉันติดตั้ง Cygwin ไว้แล้วและใช้ grep จากนั้นค่อนข้างมาก
Mark Biek

21
@Wells - grep * ระวังเก่าธรรมดาบน Windows ฟรีผ่าน Cygwin หรือ GnuWin32 FindStr และ Find นั้นมาพร้อมกับ Windows Grep พร้อม GUI ที่ยอดเยี่ยมความสามารถในการแทนที่และรวมการเลิกทำรวมถึงคุณสมบัติอื่น ๆ อีกมากมาย ... ใช่แล้ว ... ซึ่งมีค่าใช้จ่ายเพิ่มเติมเล็กน้อย
Mike Clark

11
@Wells, @Mike Clark, @Mark Biek: ฉันคิดว่าเป็นไปได้ว่าไม่มี grep tools GUI สำหรับ Windows เมื่อไม่มีคำตอบที่โพสต์นี้ แต่มันไม่เป็นความจริงอีกต่อไป grepWin มีคุณสมบัติทั้งหมดที่ระบุไว้ในคำตอบนี้และอาจมีคู่แข่งรายอื่นในขณะนี้เช่นกัน
John Y

9
@ เวลส์, เกลียด Windows เพราะเครื่องมือ Grep อยู่ที่ $ 159 เหมือนการเกลียดรถยนต์เพราะพรมปูพื้นมีราคาแพง
md1337

9
@Wells and upvoters: อะไรคือเนื้อ? เครื่องมือ GREP อื่น ๆ อีกมากมายสำหรับ Windows นั้นฟรีเหมือน unix / linux ที่จริงแล้วนี่คือสิ่งที่ฉันชอบเกี่ยวกับระบบนิเวศของ Windows - ฟรีมากมายถ้านั่นคือเกณฑ์หลักของคุณและระบบนิเวศมักจะสนับสนุนนักพัฒนาที่จ่ายเงินสำหรับการสำรวจการใช้งานจำนวนมากเช่นกับ PowerGREP PowerGREP อาจไม่ใช่ถ้วยชาของทุกคน (บางครั้ง UI ก็ล้นหลาม) แต่ความประณีตของมันก็มีประโยชน์
gwideman

322

FINDSTRนั้นทรงพลังพอสมควรรองรับนิพจน์ทั่วไปและมีข้อได้เปรียบในการใช้กับเครื่อง Windows ทั้งหมด

c:\> FindStr /?

Searches for strings in files.

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
        [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
        strings [[drive:][path]filename[ ...]]

  /B         Matches pattern if at the beginning of a line.
  /E         Matches pattern if at the end of a line.
  /L         Uses search strings literally.
  /R         Uses search strings as regular expressions.
  /S         Searches for matching files in the current directory and all
             subdirectories.
  /I         Specifies that the search is not to be case-sensitive.
  /X         Prints lines that match exactly.
  /V         Prints only lines that do not contain a match.
  /N         Prints the line number before each line that matches.
  /M         Prints only the filename if a file contains a match.
  /O         Prints character offset before each matching line.
  /P         Skip files with non-printable characters.
  /OFF[LINE] Do not skip files with offline attribute set.
  /A:attr    Specifies color attribute with two hex digits. See "color /?"
  /F:file    Reads file list from the specified file(/ stands for console).
  /C:string  Uses specified string as a literal search string.
  /G:file    Gets search strings from the specified file(/ stands for console).
  /D:dir     Search a semicolon delimited list of directories
  strings    Text to be searched for.
  [drive:][path]filename
             Specifies a file or files to search.

Use spaces to separate multiple search strings unless the argument is prefixed
with /C.  For example, 'FINDSTR "hello there" x.y' searches for "hello" or
"there" in file x.y.  'FINDSTR /C:"hello there" x.y' searches for
"hello there" in file x.y.

Regular expression quick reference:
  .        Wildcard: any character
  *        Repeat: zero or more occurances of previous character or class
  ^        Line position: beginning of line
  $        Line position: end of line
  [class]  Character class: any one character in set
  [^class] Inverse class: any one character not in set
  [x-y]    Range: any characters within the specified range
  \x       Escape: literal use of metacharacter x
  \<xyz    Word position: beginning of word
  xyz\>    Word position: end of word

ตัวอย่างการใช้งาน: findstr text_to_find *หรือเพื่อค้นหาแบบเรียกซ้ำfindstr /s text_to_find *


2
สิ่งที่ FINDSTR ขาดคือตัวเลือกในการแสดงเฉพาะจำนวนบรรทัดที่มีสตริง (เช่น grep -c) หากคุณต้องการสิ่งนี้คุณสามารถใช้ FIND / C
รา

2
หากคุณต้องการพลังงานกลับของ FINDSTR (และรูปแบบของคุณไม่ใช่ regex) คุณสามารถทำซ้ำ ๆ กันได้โดยเชื่อมคำสั่งสองคำเข้าด้วยกัน: findstr / s ".ini" * .rlog | พบ c / ".ini"
เรย์เฮย์ส

10
Findstr ไม่มีการสนับสนุน RegEx อย่างสมบูรณ์
caltuntas

5
.. โพสต์ต้นฉบับไม่ได้ขอ RegEx โดยเฉพาะ!
เรย์เฮย์ส

24
ตกลงพบว่ามันไม่ได้เป็นแบบ grep อย่างที่นักวิจารณ์คนอื่น ๆ ชี้ให้เห็น แต่ฉันก็ไม่รู้ด้วยซ้ำว่ามี +1 ที่ดีสำหรับการโพสต์!
T.Rob

107

GrepWinฟรีและโอเพนซอร์ส (GPL)

ป้อนคำอธิบายรูปภาพที่นี่ฉันใช้ grepWin ซึ่งเขียนโดยหนึ่งในเต่าพวกหนึ่ง ทำงานบน Windows หรือไม่

http://stefanstools.sourceforge.net/grepWin.html


2
และมันฟรีและมันสามารถค้นหาในไดเรคทอรี / ไฟล์ที่ซ่อนซึ่ง PowerGrep ไม่สามารถทำอย่างถูกต้อง ...
Jérôme Verstrynge

3
ดูเหมือนจะไม่มีอินเตอร์เฟสบรรทัดคำสั่ง
Andreas Haferburg

2
เป็นเรื่องดี แต่ให้บริบทเพียงหนึ่งบรรทัดเท่านั้นและคุณไม่สามารถมองเห็นบริบทนั้นจนกว่าการค้นหาทั้งหมดจะเสร็จสิ้น
Matthew Lock

2
ดูเหมือนว่าเป็นเครื่องมือที่ดีและเรียบง่าย แต่ฉันต้องการผลลัพธ์ในไฟล์และดูเหมือนจะไม่ให้ตัวเลือกในการส่งออก ด้วยเหตุผลนั้นฉันไปกับ AstroGrep
Ross

ไม่ค้นหาใน pdf
JinSnow

53

อัปเดตกรกฎาคม 2556:

เครื่องมือ grep อีกอันที่ฉันใช้ตลอดเวลาบน Windows คือAstroGrep :

AstroGrep สุดยอด

ความสามารถในการแสดงให้ฉันมากกว่าเพียงแค่การค้นหาบรรทัด (เช่น --context = NUM ​​ของบรรทัดคำสั่ง grep) นั้นมีค่ายิ่ง
และมันก็รวดเร็ว เร็วมากแม้ในคอมพิวเตอร์เก่าที่ไม่มีไดรฟ์SSD (ฉันรู้ว่าพวกเขาเคยทำฮาร์ดไดรฟ์นี้กับดิสก์หมุนเรียกว่าplattersใช่ไหม?)

ว่าง.
มันเป็นแบบพกพา (zip zip ง่าย ๆ เพื่อ unzip)


คำตอบเดิมตุลาคม 2008

ข้อความแสดงแทนGnu Grepไม่เป็นไร

คุณสามารถดาวน์โหลดได้ที่นี่: ( site ftp )

ตัวเลือกทั้งหมดตามปกติอยู่ที่นี่

เมื่อรวมกับgawkและxargs (รวมถึง 'find' จากGnuWin32 ) และคุณสามารถเขียนสคริปต์เหมือนที่คุณใช้กับ Unix ได้!

ดูตัวเลือกที่ฉันใช้เพื่อ grep ซ้ำ :

grep --include "*.xxx" -nRHI "my Text to grep" *

ฉันเพิ่งเริ่มมองหาการแทนที่ Gnu Grep เนื่องจากรุ่น windows ดูเหมือนจะไม่สามารถจัดการกับไฟล์ข้อความ 10 Mb ของฉันได้ มันนั่งอยู่ที่นั่นและแกล้งทำเป็นไม่พบอะไรเลย ถ้าฉันลดขนาดไฟล์มันจะเริ่มทำงาน
Peter M

สวัสดี VonV ลิงก์ของ "ตัวเลือกทั่วไป" กลายเป็น: 404 - ไม่พบหน้าเว็บ โปรดพิจารณาแก้ไขคำตอบของคุณ
eeerahul

1
กู้คืนลิงค์ @eeerahul และเพิ่มตัวอย่างแล้ว
VonC

AstroGrep เป็นสิ่งที่ดี แต่น่าเสียดายที่ในขณะนี้ยังไม่มีฟีเจอร์ 'ค้นหาและแทนที่' ซึ่งเป็นตัวแบ่งข้อตกลงสำหรับฉัน
Łukasz Wiatrak

มันขาดฟังก์ชั่น "แทนที่"
XristosK

30

PowerShell ของ Select-String cmdlet นั้นดีใน v1.0 แต่ดีกว่าสำหรับ v2.0อย่างมาก การมี PowerShell ใน Windows รุ่นล่าสุดหมายความว่าทักษะของคุณที่นี่จะมีประโยชน์เสมอโดยไม่ต้องติดตั้งอะไรก่อน

เพิ่มพารามิเตอร์ใหม่ลงใน Select-String : Select-String cmdlet สนับสนุนพารามิเตอร์ใหม่เช่น:

  • -Context: สิ่งนี้ช่วยให้คุณเห็นบรรทัดก่อนและหลังบรรทัดการจับคู่
  • -AllMatches: ซึ่งช่วยให้คุณเห็นการแข่งขันทั้งหมดในบรรทัด (ก่อนหน้านี้คุณสามารถเห็นเฉพาะการแข่งขันครั้งแรกในบรรทัด)
  • -NotMatch: เทียบเท่ากับ grep -vo
  • -Encoding: เพื่อระบุการเข้ารหัสตัวอักษร

ฉันคิดว่ามันสมควรที่จะสร้างฟังก์ชันgcirสำหรับการGet-ChildItem -Recurse .มีกึ๋นที่จะผ่านพารามิเตอร์อย่างถูกต้องและนามแฝงสำหรับss Select-Stringดังนั้นคุณเขียน:

gcir * .txt | ss foo


3
ตัวอย่างของ grep -R equivilant: Get-ChildItem -recurse -include * .txt | Select-String -CaseSenstive "SomeString"
jslatts

6
ฉันชอบฟังก์ชั่นมากมายที่เปิดตัวใน PS แต่ทำไมทุกคำสั่งจึงต้องยาวกว่าโปรแกรมภาษาโคบอลทั่วไป?
evilcandybag

3
@evilcandybag: ขอบคุณการเติมข้อความอัตโนมัติที่ยอดเยี่ยมรวมถึงการเติมข้อความอัตโนมัติในชื่อพารามิเตอร์การพิมพ์บรรทัดคำสั่ง PowerShell นั้นง่ายและรวดเร็วและฉันสามารถอ่านผลลัพธ์ได้
Jay Bazuzi

1
@jslatts: หรือคุณสามารถใช้นามแฝงและชื่อพารามิเตอร์บางส่วนและมันจะเป็นls . *.txt -r| sls -ca "SomeString"
Rynant

1
เป็นนามแฝงที่มีอยู่slsสำหรับSelect-Stringมันนานเกินไป?
Joey

23

มันอาจจะไม่ตรงตกอยู่ในประเภท 'grep' แต่ฉันไม่สามารถได้รับโดยใน Windows โดยไม่ต้องยูทิลิตี้ที่เรียกว่าAgentRansack มันเป็นยูทิลิตี้ "ค้นหาในไฟล์" ที่ใช้ gui พร้อมการสนับสนุน regex มันง่ายมากที่จะคลิกขวาที่โฟลเดอร์แล้วกด "ransack .. " แล้วค้นหาไฟล์ที่มีสิ่งที่คุณต้องการ เร็วมากเช่นกัน


น่าเสียดายที่มันไม่สามารถเปิดตัวแก้ไขข้อความภายนอกที่บรรทัดที่เกี่ยวข้องได้
Pawel Furmaniak

1
ลองใช้รุ่นจ่ายเงินที่เรียกว่า Filelocator Pro ซึ่งเป็นเครื่องมือ grep ที่ดีที่สุดเท่าที่ฉันเคยใช้
Ian Stanway

Filelocator pro ทำการทดแทนหรือไม่?
alimack

มีอินเทอร์เฟซที่ดีมากมันทำการทดแทนหรือไม่
alimack

หรือที่เรียกว่า Filelocator lite
alimack

19

Baregrep ( Baretailก็ดีเหมือนกัน)


ไม่ทำงานบน win7 64 บิต (
Daniel Magnusson

ฉันค่อนข้างแน่ใจว่าพวกเขาได้แก้ไขแล้วในตอนนี้ การร้องเรียนหลักของฉันต่อ BareTail คือคุณไม่สามารถ "กรอง" บันทึกเพื่อซ่อน (ไม่ใช่แค่สี) บรรทัดที่ไม่เกี่ยวข้อง
Ed Brannin

1
คุณสามารถกรองและค้นหาด้วย BareTailPro ไม่ใช่รุ่นฟรี (BareTail)
นวล

ฉันค่อนข้างมั่นใจว่าพวกเขายังไม่ได้แก้ไขในตอนนี้เนื่องจากยังไม่ได้อัปเดตตั้งแต่ปี 2549
alldayremix

4
มันทำงานได้ดีบน windows 7 Pro 64 บิตที่นี่
cb88

17

เป็นเวลาสองสามปีแล้วที่คุณถามคำถามนี้ แต่ฉันขอแนะนำ AstroGrep ( http://astrogrep.sourceforge.net )

มันฟรีโอเพนซอร์สและมีอินเตอร์เฟซที่เรียบง่าย ฉันใช้มันเพื่อค้นหารหัสตลอดเวลา


แต่มันไม่ได้ค้นหาในไฟล์ pdf
JinSnow

16

PowerShell ได้รับการกล่าวถึงสองสามครั้ง นี่คือวิธีที่คุณใช้จริงในแบบ grepish:

Get-ChildItem -recurse -include *.txt | Select-String -CaseSensitive "SomeString"

มันจะค้นหาไฟล์ข้อความทั้งหมดซ้ำ ๆ ในแผนผังไดเรกทอรีปัจจุบันโดยคำนึงถึงขนาดตัวSomeStringพิมพ์

ยิ่งไปกว่านั้นให้เรียกใช้สิ่งนี้:

function pgrep { param([string]$search, [string]$inc) Get-ChildItem -recurse -include $inc | Select-String -CaseSensitive $search }

จากนั้นทำ:

pgrep SomeStringToSearch *.txt

จากนั้นให้ทำให้มันวิเศษมากเพิ่มชื่อแทนฟังก์ชั่นในโปรไฟล์ PowerShellของคุณและคุณเกือบจะสามารถทำให้ความเจ็บปวดของการไม่มีเครื่องมือบรรทัดคำสั่งที่เหมาะสม




14

Git บน Windows = grep ใน cmd.exe

ฉันเพิ่งค้นพบว่าการติดตั้งGitจะให้คำสั่ง Linux พื้นฐานแก่คุณ: cat, grep, scp และคำสั่งอื่น ๆ ที่ดี

ติดตั้งแล้วเพิ่มโฟลเดอร์ Git bin ลงใน PATH ของคุณจากนั้น cmd.exe ของคุณจะมีฟังก์ชันการทำงานพื้นฐานของ Linux!

http://code.google.com/p/msysgit/downloads/list?can=3


นั่นมัน! สมบูรณ์แบบตอนนี้ฉันมี grep ในระบบโดยไม่มีเครื่องมือของบุคคลที่สาม
himanshuxd

10

dnGREPเป็นเครื่องมือ grep โอเพนซอร์สสำหรับ Windows รองรับฟีเจอร์เด็ด ๆ มากมายรวมถึง:

  • เลิกทำการแทนที่
  • ความสามารถในการค้นหาโดยคลิกขวาที่โฟลเดอร์ใน explorer
  • ตัวเลือกการค้นหาขั้นสูงเช่นการค้นหาการออกเสียงและ xpath
  • ค้นหาภายในไฟล์ PDF เอกสารสำคัญและเอกสาร Word

IMHO มันมีอินเตอร์เฟสที่ดีและสะอาดเหมือนกัน :)


1
ฉันได้ลองใช้เครื่องมือ grep ที่แนะนำแล้วและสำหรับฉันแล้ว dnGrep ชนะ
flobadob

มันค้นหาใน pdf แต่ไม่ใช่ epub
JinSnow

แก้ไข: มันสามารถค้นหา epub คุณต้องเพิ่มแบบนี้: github.com/dnGrep/dnGrep/issues/200
JinSnow

7

ฉันมักจะใช้WinGREPแต่ฉันมีปัญหากับมันไม่ปล่อยไฟล์


2
ผมเคยใช้ wingrep เป็นเวลาหลายปีก็จะดีมีข้อยกเว้นว่าไดเรกทอรีเลือกกล่องที่อยู่ห่างไกลมีขนาดเล็กเกินไป
Cruachan

ใบอนุญาตคุณจะต้องจ่ายสำหรับมันหลังจาก EVAL 30day
ชิป

มันมีคุณสมบัติที่ดีที่เครื่องมือ grep หลายตัวไม่สามารถที่จะสลับการจับคู่ได้ พูดง่าย ๆ สำหรับการค้นหาไฟล์ HTML
Matthew Lock

ฉันสังเกตเห็นคุณลักษณะที่น่ารำคาญของ WinGrep ดูเหมือนว่าจะเก็บล็อกไฟล์ของการแข่งขันทั้งหมดและถ้าคุณลองและลบไฟล์ใดไฟล์หนึ่งใน Windows Explorer คุณจะไม่สามารถทำได้จนกว่าคุณจะปิด WinGrep
Matthew Lock

หากสามารถค้นหาในผลการค้นหาให้ จำกัด รายการให้แคบลงยิ่งขึ้นซึ่งจะเป็นเครื่องมือที่เหมาะสำหรับฉัน
Shamil

7

ข้างๆพอร์ต Windows ของ grep GNU ที่:

http://gnuwin32.sourceforge.net/

นอกจากนี้ยังมี grep ของ Borland (คล้ายกับ GNU one) ที่มีอยู่ใน freeware คอมไพเลอร์ฟรี C ++ ของ Borland (เป็นฟรีแวร์ที่มีเครื่องมือบรรทัดคำสั่ง)


7

ฉันใช้อรรถประโยชน์ของ GNU สำหรับ Win32สำเร็จมาระยะหนึ่งแล้วและมันมี grep ที่ดีเช่นเดียวกับ tail และ gnu utils อื่น ๆ ที่มีประโยชน์สำหรับ win32 ฉันหลีกเลี่ยงเชลล์ที่ทำแพ็กเกจและใช้ไฟล์ที่เรียกทำงานได้ใน win32 command prompt

ส่วนท้ายที่ถูกบรรจุเป็นแอปพลิเคชั่นที่ค่อนข้างดีเช่นกัน


6

ฉันเป็นผู้แต่งAba Search and Replace เช่นเดียวกับ PowerGREP รองรับการแสดงผลปกติบันทึกรูปแบบสำหรับการใช้งานเพิ่มเติมยกเลิกการเปลี่ยนภาพตัวอย่างพร้อมเน้นไวยากรณ์สำหรับ HTML / CSS / JS / PHP การเข้ารหัสที่แตกต่างกันรวมถึง UTF-8 และ UTF-16

เมื่อเปรียบเทียบกับ PowerGREP GUI จะมีความยุ่งเหยิงน้อยลง Aba เริ่มค้นหาทันทีในขณะที่คุณพิมพ์รูปแบบ(การค้นหาที่เพิ่มขึ้น)เพื่อให้คุณสามารถทดลองกับนิพจน์ทั่วไปและเห็นผลทันที

คุณยินดีที่จะลองใช้เครื่องมือของฉัน ฉันยินดีที่จะตอบคำถามใด ๆ


4

ฉันต้องการเครื่องมือ grep ฟรีสำหรับ Windows ที่อนุญาตให้คุณคลิกขวาที่โฟลเดอร์และทำการค้นหา regex ของไฟล์ทุกไฟล์โดยไม่ต้องมีหน้าจอใด ๆ

ต่อไปนี้เป็นวิธีแก้ปัญหาอย่างรวดเร็วตามที่findstrกล่าวถึงในโพสต์ก่อนหน้า

สร้างไฟล์ข้อความที่ใดที่หนึ่งบนฮาร์ดไดรฟ์ของคุณซึ่งเป็นเครื่องมือที่มีอายุการใช้งานยาวนาน เปลี่ยนชื่อเป็น. bat หรือ. cmd และวางต่อไปนี้:

@echo off
set /p term="Search term> "
del %temp%\grepresult.txt
findstr /i /S /R /n /C:"%term%" "%~1\*.*" > "%temp%\grepresult.txt"
start notepad "%temp%\grepresult.txt"

จากนั้นเรียกดูโฟลเดอร์ SendTo ใน Windows 7 เรียกดู%APPDATA%\Microsoft\Windows\SendToและลากทางลัดของแบตช์ไฟล์ไปยังโฟลเดอร์ SendTo

ฉันเปลี่ยนชื่อทางลัดเป็น1 GREPเก็บไว้ที่ด้านบนของรายการ SendTo

สิ่งที่ฉันต้องการจะทำต่อไปคือการส่งfindstrผ่านของสิ่งที่จะสร้างไฟล์ html เพื่อให้คุณสามารถคลิกที่แต่ละบรรทัดออกเพื่อเปิดไฟล์ นอกจากนี้ฉันไม่คิดว่ามันใช้งานได้กับทางลัดไปยังโฟลเดอร์ ฉันจะต้องตรวจสอบพารามิเตอร์และดูว่ามันมี ".lnk"



3

ฉันใช้ grep ของ Borland มาหลายปี แต่เพิ่งพบรูปแบบที่ไม่ตรงกัน Eeeks ไม่พบสิ่งอื่นในช่วงหลายปีที่ผ่านมา? ฉันเขียนการแทนที่ข้อความค้นหาแบบง่ายที่เรียกซ้ำเช่น grep - เป็น FS.EXE ที่แหล่งกำเนิด

grep ล้มเหลว ...

C:\DEV>GREP GAAPRNTR \SOURCE\TPALIB\*.PRG
<no results>

windows findstr ทำงานได้ ...

C:\DEV>FINDSTR GAAPRNTR \SOURCE\TPALIB\*.PRG
\SOURCE\TPALIB\TPGAAUPD.PRG:ffSPOOL(cRPTFILE, MEM->GAAPRNTR, MEM->NETTYPE)
\SOURCE\TPALIB\TPPRINTR.PRG:    AADD(mPRINTER,   TPACONFG->GAAPRNTR)
\SOURCE\TPALIB\TPPRINTR.PRG:               IF TRIM(TPACONFG->GAAPRNTR) <> TRIM(mPRINTER[2])
\SOURCE\TPALIB\TPPRINTR.PRG:                   REPLACE TPACONFG->GAAPRNTR WITH mPRINTER[2]

3

เครื่องมือที่ฉันเลือกคือWindows Grepที่ตั้งชื่ออย่างเหมาะสม:

  • GUI ที่เรียบง่ายดี
  • รองรับการค้นหาและแทนที่
  • สามารถแสดงเส้นรอบ ๆ เส้นที่พบ
  • สามารถค้นหาภายในคอลัมน์ใน CSV และไฟล์ที่มีความกว้างคงที่

น่าเสียดายที่ฉันหยุดใช้มาหลายปีแล้ว
alimack

@alimack ใช่ฉันสังเกตเห็นตัวเองเมื่อเร็ว ๆ นี้ อย่างไรก็ตามเครื่องมือยังคงใช้งานได้ (อย่างน้อยใน Windows 7) และยังสามารถดาวน์โหลดได้จากไลค์ของ CNET ความอัปยศมันเป็นเครื่องมือที่ดีทีเดียว
John N

กำลังมองหาการทดแทน PowerGREP ที่มีแนวโน้ม แต่อินเทอร์เฟซที่น่าเกลียดและ v มีราคาแพง พยายาม grepWin, กระดูกที่เปลือยเปล่าเกินไป, Filelocator ดูเหมือนจะไม่แทนที่ข้อความ ยินดีต้อนรับข้อเสนอแนะ - โดยเฉพาะอย่างยิ่งชอบเห็นผลลัพธ์ก่อนที่ฉันจะยอมรับการแทนที่
alimack

2

สตริงการเลือกของ PowerShell นั้นคล้ายคลึงกันไม่ใช่ตัวเลือกและความหมายเดียวกัน แต่ก็ยังทรงพลัง


2

หากคุณต้องการเครื่องมือ Windows Grep ที่ใช้งานง่ายฉันสร้างหนึ่งชื่อ P-Grep ที่ฉันได้ทำให้สามารถดาวน์โหลดได้ฟรีจากเว็บไซต์ของฉัน: www.adjutantit.com - เมนูหลักดาวน์โหลด

Windows Grep ดูเหมือนจะมีปัญหากับไฟล์จำนวนมากดังนั้นฉันจึงเขียนด้วยตัวเอง - ซึ่งน่าเชื่อถือกว่า คุณสามารถเลือกโฟลเดอร์คลิกขวาแล้วส่งไปที่ P-Grep โฟลเดอร์ sendto ไม่ได้รับการปรับปรุงในระหว่างการติดตั้ง


2

ทางเลือกที่ดีอีกประการหนึ่งคือMSYS มันช่วยให้คุณมีโปรแกรมอรรถประโยชน์ GNU อื่น ๆ เพื่อให้คุณมีประสิทธิผลมากขึ้น


1

ฉันใช้AJC Grepทุกวันเป็นเวลาหลายปี ข้อ จำกัด ที่สำคัญเพียงประการเดียวที่ฉันพบคือพา ธ ของไฟล์จะถูก จำกัด ที่ 255 อักขระและจะหยุดเมื่อพบหนึ่งแทนที่จะเป็นแค่การออกคำเตือน มันน่ารำคาญ แต่ก็ไม่ค่อยเกิดขึ้นบ่อยนัก

ฉันใช้กับ Windows 7 Ultimate 64 บิตดังนั้นข้อมูลประจำตัว 64 บิตนั้นใช้ได้


1

GREP สำหรับ Windows

ฉันใช้มันตลอดไปและโชคดีที่มันยังคงมีอยู่ มันเร็วและเล็กมาก


มีแม้กระทั่ง GUI ฉันแค่ใช้มันจากบรรทัดคำสั่งดังนั้นฉันจึงไม่เคยรู้เลย
bbrown

ฉันกำลังมองหาวิธีง่าย ๆ ในการแสดงเส้นก่อนและหลังการแข่งขันและอันนี้ทำ ตัวอย่างเช่น: run 'netstat -anb | grep -B1 22 'เพื่อทราบว่าโปรแกรมใดบ้างที่ฟังพอร์ต 22
Jan Ehrhardt

0

หากไม่มีคำตอบใด ๆ ที่เป็นสิ่งที่คุณกำลังมองหาบางทีคุณอาจจะเขียน wrapper ไปที่ FindStr ที่คุณต้องการ

FindStr ค่อนข้างดีอยู่แล้วดังนั้นจึงควรทำให้ GUI ขึ้นมา (ถ้าคุณต้องการ) และให้คุณสมบัติพิเศษบางอย่าง (เช่นการรวมกับ Find เพื่อค้นหาจำนวนไฟล์ที่มีสตริงที่ระบุ [ดังกล่าวข้างต้น])

แน่นอนว่าคุณมีความต้องการเวลาและความชอบในการทำเช่นนี้!


0

ฉันได้ติดตั้งCygwinไว้ในเครื่องของฉันและวาง Cygwin bin ไว้ในพา ธ ด้านสิ่งแวดล้อมของฉันดังนั้น Cygwin grep จึงทำงานเหมือนปกติในบรรทัดคำสั่ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.