ฉันกำลังค้นหานิพจน์ปกติที่ใช้เครื่องมือค้นหา / แทนที่ GUI ที่สามารถจัดการไฟล์ / ไดเรกทอรีย่อยหลาย ๆ ไฟล์ได้เช่นgrepWinแต่สำหรับ Mac OS X
PS ฉันรู้เกี่ยวกับ grep และฉันไม่ต้องการเครื่องมือแก้ไข แต่เป็นเครื่องมือแบบสแตนด์อโลน
ฉันกำลังค้นหานิพจน์ปกติที่ใช้เครื่องมือค้นหา / แทนที่ GUI ที่สามารถจัดการไฟล์ / ไดเรกทอรีย่อยหลาย ๆ ไฟล์ได้เช่นgrepWinแต่สำหรับ Mac OS X
PS ฉันรู้เกี่ยวกับ grep และฉันไม่ต้องการเครื่องมือแก้ไข แต่เป็นเครื่องมือแบบสแตนด์อโลน
คำตอบ:
โอ้ฉันเพิ่งพบสิ่งนี้ด้วย:
http://www.dprog.ch/home/products/find_and_replace_it/
เกี่ยวกับค้นหาและแทนที่!
การค้นหาและแทนที่ยูทิลิตี้ที่ทรงพลัง จะช่วยให้การดำเนินการเปลี่ยนชุดที่ซับซ้อนมากในไฟล์ข้อความที่มีขนาดใด รองรับไวยากรณ์นิพจน์ปกติและการเข้ารหัสนับสิบ มันมีความสามารถในการเขียนสคริปต์ที่ช่วยให้การเปลี่ยนแปลงได้ทันทีแทนที่ข้อความสำหรับสตริงที่พบทุก มันยังจัดการการประมวลผลแบตช์ของการเข้ารหัสไฟล์รวมถึงชนิดของจุดสิ้นสุดของบรรทัด
นี่คือคุณสมบัติที่สำคัญของค้นหาและแทนที่!:
- ค้นหาและแทนที่ในหลาย ๆ ไฟล์พร้อมกัน
- รองรับ regexps
- รองรับการเข้ารหัสข้อความจำนวนมาก
- จัดทำโปรแกรมแก้ไข regexp
- แสดงตัวอย่างการค้นหาและแทนที่
- นำเสนอส่วนต่อประสานสคริปต์ที่อนุญาตให้เปลี่ยนข้อความแทนที่ได้ทันที
- คุณสมบัติอื่น ๆ อีกมากมาย
มันพัฒนาโดยdProg - ฟิลิปป์ Docourt ฉันไม่เคยใช้มันมาก่อนดังนั้นลองนึกถึงคำแนะนำนี้ด้วยเม็ดเกลือ!
คุณอาจกำลังมองหาแอพ GUI แต่ฉันสามารถแนะนำคำสั่งเทอร์มินัลใหม่ได้ Perl สามารถทดแทนแบบอินไลน์:
find . -type f -exec perl -p -i -e "s/SEARCH_REGEX/REPLACEMENT/g" {} \;
นี้จะค้นหาไฟล์ทั้งหมดภายใต้ไดเรกทอรีปัจจุบันและแทนที่ตาม regexp ที่ให้ไว้ หากคุณต้องการเปลี่ยนไดเรกทอรีวิธีที่ง่ายคือพิมพ์: cd (ต้องแน่ใจว่ามีช่องว่างหลังจาก) จากนั้นลากและวางโฟลเดอร์จาก Finder ลงในหน้าต่างเทอร์มินัล กดปุ่มย้อนกลับและคุณจะอยู่ในโฟลเดอร์ที่คุณต้องการ จากนั้นเรียกใช้คำสั่ง perl ด้านบน
หากคุณต้องการให้ Perl ทำสำเนาสำรองก่อนแทนที่ให้รัน:
find . -type f -exec perl -p -i.bak -e "s/SEARCH_REGEX/REPLACEMENT/g" {} \;
ฉันเข้าใจว่าคุณไม่จำเป็นต้องมีเครื่องมือแก้ไขแบบสมบูรณ์ แต่มักพบเครื่องมือที่ดีที่สุดภายในโปรแกรมเดียว TextMateได้รับการสนับสนุนอย่างเต็มที่สำหรับการแสดงออกปกติและจัดการไฟล์และไดเรกทอรีได้เป็นอย่างดี อีกประการหนึ่งที่ผมยังไม่ได้ลอง แต่ได้ยินสิ่งที่ดีเกี่ยวกับการเป็นTextWrangler