ค้นหาไฟล์ทั้งหมดในโครงการใน Sublime Text 3


289

มีวิธีการค้นหาสตริงในไฟล์ทั้งหมดภายในโครงการใน Sublime Text 3 หรือไม่? สตริงไม่ใช่วิธีการ


42
ctrl + shift + f จากนั้นเลือกรูทโฟลเดอร์ในWhere:
Tobberoth

2
มีวิธีข้ามไปยังไฟล์ในหน้าต่างค้นหาผลลัพธ์หรือไม่ ไม่ต้องกังวลดับเบิลคลิกที่ชื่อไฟล์
อีวาน

1
แต่คุณจะดับเบิลคลิกโดยไม่ใช้เมาส์ได้อย่างไร
jasonleonhard


2
@ un5t0ppab13 F4(ไปข้างหน้า) และshift+F4(ย้อนกลับ) บน Windows
keyser

คำตอบ:


420

คุณสามารถค้นหาไดเรกทอรีใช้→Find Find in filesรวมถึงแท็บที่เปิดอยู่ทั้งหมด

แป้นพิมพ์ลัดคือCtrl+ Fบนแป้นพิมพ์ที่ไม่ใช่ Mac (ปกติ) และ+ Fบน Mac

คุณจะนำเสนอกับสามกล่อง: Find, และWhere Replaceเป็นการค้นหาปกติ / ค้นหา - แทนที่การค้นหาที่Whereระบุไฟล์หรือไดเรกทอรีเพื่อค้นหา ตัวอย่างเช่นฉันมักจะใช้ชื่อไฟล์หรือ.ค้นหาไดเรกทอรีปัจจุบัน นอกจากนี้ยังมีโครงสร้างพิเศษบางอย่างที่สามารถใช้ภายในWhereฟิลด์ได้:

<project>,<current file>,<open files>,<open folders>,-*.doc,*.txt

โปรดทราบว่าสิ่งเหล่านี้ไม่ใช่ตัวยึดตำแหน่งคุณพิมพ์คำต่อคำเหล่านี้ ส่วนใหญ่เป็นแบบอธิบายตนเอง (เช่น-*.docแยกไฟล์ที่มี.docนามสกุล)

การกด...ไปทางขวาจะแสดงตัวเลือกที่มีให้คุณทั้งหมด

หลังจากการค้นหาคุณจะพบFind resultsหน้าเว็บพร้อมผลการค้นหาที่ตรงกันทั้งหมดของคุณ หากต้องการข้ามไปยังบรรทัดและไฟล์ที่ระบุคุณเพียงดับเบิลคลิกที่บรรทัด


1
คุณสามารถเพิ่มข้อมูลเกี่ยวกับช่องที่ไหนได้บ้าง?
Ivan

1
ขอบคุณ! ฉันต้องทำเล่น ๆ กับ "ที่ไหน:" ฉันคิดว่ามันมาจากรูทโปรเจ็กต์ แต่ถ้ารูทเป็น proj และฉันต้องการค้นหาใน proj / src ฉันต้องพิมพ์ proj / src ใน Where
Ivan

4
อัปเดตด้วยข้อมูลเกี่ยวกับกล่องที่ไหนและวิธีที่คุณสามารถใส่ <project> ที่นั่น
Alexander Morland

5
<project>เป็นเคล็ดลับที่ดีมาก! ... ขอบคุณสำหรับสิ่งนั้น นอกจากนี้ (ในกรณีที่มีคนไม่ทราบและจำเป็นต้องใช้มัน) คุณสามารถกำหนด<open folders>, <open files>กรอง ... commaหรือผสมพวกเขาด้วย
gmo

2
@mindeavor คุณสามารถวนรอบผลลัพธ์โดยใช้ F4 (ไปข้างหน้า) และเปลี่ยน + F4 (ย้อนกลับ) บน Windows ดูFind --> Find Resultsแท็บ
keyser

34

คุณสามารถใส่<project>ในกล่อง "ตำแหน่ง:" เพื่อค้นหาจากโครงการ Sublime ปัจจุบันจากเมนูค้นหาในไฟล์

สิ่งนี้มีประโยชน์มากกว่าการค้นหาจากโฟลเดอร์รูทเมื่อโครงการของคุณรวมหรือไม่รวมโฟลเดอร์หรือนามสกุลไฟล์


1
นี่คือวิธีที่มันจะทำการค้นหาซ้ำในโครงการ การระบุโฟลเดอร์เท่านั้นไม่ทำงาน ขอบคุณ!
WesternGun

ฉันไม่เห็นกล่อง "where:"
Martin Thoma

@ WesternGun ขอบคุณคุณเอาคำออกจากปากของฉัน แต่ฉันยังคงมีคำถามอื่นมันจะทำการค้นหาซ้ำจากราก /? มันหยุดลึกแค่ไหน? เราสามารถเปลี่ยนพฤติกรรมนี้เพื่อทำให้มันลึกขึ้นได้ไหม?
hello_there_andy

1
@hello_there_andy ไม่ได้เริ่มจาก/แต่จากโฟลเดอร์ที่คุณใส่ไว้ "Where" ฉันคิดว่ามันจะไม่หยุดที่ระดับความลึกที่แน่นอน; มันจะไปให้ถึงที่ลึกที่สุดถ้าคุณเข้าใจในสิ่งที่ฉันหมายถึง :)
23499

@ WesternGun ฉันรู้ว่าคุณหมายถึงอะไร;) บางที st3 ที่ฉันต้องการใช้นั้นต้องได้รับการอัปเดตเนื่องจากมีความลึกสูงสุดที่ฉันลองใช้ dir ทดสอบกับ dir ย่อยมากมายและ dir ย่อยย่อย ... ถอนหายใจ เวลาที่จะดูไฟล์
ปรับแต่ง

23

สารละลาย:

ใช้การค้นหาทางลัดทั้งหมด: Ctrl+ Shift+ Fจากนั้นเลือกโฟลเดอร์ในช่อง "ที่ไหน:" ด้านล่าง (และสำหรับ Mac มันคือ+ Shift+ F)

หากไดเร็กทอรีรูทสำหรับโปรเจ็กต์คือ proj พร้อมกับไดเร็กทอรีย่อย src และ aux และคุณต้องการค้นหาในโฟลเดอร์ย่อยทั้งหมดให้ใช้โฟลเดอร์ proj หากต้องการ จำกัด การค้นหาเฉพาะโฟลเดอร์ src ให้ใช้ proj / src ในช่อง "ที่ไหน:"



1

นี่คือวิธีที่ง่ายที่สุด: File -> Find in files

ป้อนคำอธิบายรูปภาพที่นี่


มันไม่อยู่ที่นั่น (อีกต่อไป)
Martin Thoma

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