รหัส VS - ค้นหาข้อความในไฟล์ทั้งหมดในไดเรกทอรี


356

มีวิธีการค้นหาข้อความในไฟล์ทั้งหมดในไดเรกทอรีโดยใช้ VS Code หรือไม่?

นั่นคือถ้าฉันพิมพ์ "find this" ในการค้นหาของฉันมันจะค้นหาไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันและส่งคืนไฟล์ที่ตรงกับ โดยทั่วไปแล้วถ้าฉันทำ grep เพื่อนร่วมงานของฉันบอกฉันประเสริฐมีบางอย่างเช่นนี้

คำตอบ:


391

คุณสามารถแก้ไข , ค้นหาในไฟล์ (หรือCtrl+ Shift+ F- การผูกคีย์เริ่มต้นCmd+ Shift+ Fบน MacOS) เพื่อค้นหาโฟลเดอร์ที่เปิดอยู่ในปัจจุบัน

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


3
เมื่อคุณมีคู่ที่ตรงกันแล้วคุณ Ctrl (Mac: 'Cmd') คลิกที่คำหลักในผลลัพธ์การค้นหาเพื่อเปิดไฟล์นั้นสำหรับการแก้ไขแบบเคียงข้างกันข้ามไปที่ตำแหน่งนั้นในไฟล์
bitsand

58
ปัญหาคือเมื่อคุณเปิดไดเรกทอรีใน Visual Studio Code ที่มีหลายไดเรกทอรีย่อยคุณมักต้องการค้นหาในไดเรกทอรีเดียว ค้นหาในไฟล์ไม่ได้เกี่ยวกับการทำเช่นนั้น (นี่เป็นคำตอบที่มีประโยชน์สำหรับคำถามที่แตกต่างอย่างสิ้นเชิงแน่นอน) @JesperWilfing คำตอบของ (คลิกขวาที่โฟลเดอร์ค้นหาในโฟลเดอร์) จะดีกว่า
James Moore

1
มีอะไรที่เหมือนกับใน Notepad ++ ซึ่งคุณสามารถระบุไดเรกทอรีที่ต้องการค้นหาโดยไม่ต้องเปิดเลย
ทำใหม่

6
สิ่งนี้ไม่ตอบคำถาม คุณค้นหาภายในโฟลเดอร์ที่กำหนดได้อย่างไร
Zaqx

6
ตามคำตอบอื่นหากคุณคลิกขวาที่โฟลเดอร์และเลือก "ค้นหาในโฟลเดอร์ ... (Shift + Alt + F)" คุณจะเห็นรูปแบบที่จำเป็นสำหรับการค้นหาไดเรกทอรีเฉพาะ ดูเหมือนว่าคุณจะเริ่มจากรูทเวิร์กสเปซ เช่นพื้นที่ทำงานของฉันคือWebInterfaceและรวมโฟลเดอร์ของฉันคือ./WebInterface/cli/src/[folder]
Tyler StandishMan

266

ในรหัส VS ...

  1. ไปที่ Explorer ( Ctrl+ Shift+ E)
  2. คลิกขวาที่โฟลเดอร์โปรดของคุณ
  3. เลือก "ค้นหาในโฟลเดอร์"

คำค้นหาจะถูกเติมล่วงหน้าด้วยพา ธ ภายใต้ "ไฟล์ที่จะรวม"


26
นี่ควรเป็นคำตอบที่ยอมรับได้ ฉันสามารถเคาะมันออกเป็นครั้งแรกด้วยโฟลเดอร์ลูกหลายโฟลเดอร์ในโฟลเดอร์หลักโดยมีไฟล์มากกว่าสิบไฟล์ที่ต้องการสตริงเพื่อแทนที่ ขอบคุณมาก!
klewis

2
"ค้นหาในโฟลเดอร์" ไม่ทำงานบนโฟลเดอร์ที่ถูกข้ามโดยอัตโนมัติnode_modulesซึ่งบางครั้งจำเป็นสำหรับนักพัฒนา JavaScript "รหัส VS แยกบางโฟลเดอร์ตามค่าเริ่มต้นเพื่อลดจำนวนผลการค้นหาที่คุณไม่สนใจเปิดการตั้งค่าเพื่อเปลี่ยนกฎเหล่านี้ภายใต้ส่วน files.exclude และ search.exclude" จากcode.visualstudio.com/docs/editor/…
Șerban Ghiță

ยังค่อนข้างยุ่งยากหาก repo root ไม่ใช่รูทโครงการจริงซึ่งในกรณีนี้ VSCode จะใช้ค่าเริ่มต้นในการค้นหา repo ทั้งหมด แต่ก็ไม่มีทางที่จะ จำกัด ให้กับโปรเจ็กต์ปัจจุบัน (โฟลเดอร์ที่เปิดใน VSCode)
Svend

คำตอบที่ยอมรับไม่ได้ผลสำหรับฉัน (ไม่แน่ใจว่าฉันทำอะไรผิดหรือเปล่า) สิ่งนี้ใช้ได้ - ขอบคุณ
java-addict301

สิ่งนี้มีผลข้างเคียงที่โชคร้ายของการปิดบังสิ่งที่มีอยู่แล้วในฟิลด์ 'ไฟล์ที่จะรวม' และไม่มีทางที่ฉันจะเห็นการกู้คืนตัวกรองปกติของฉัน
greg7gkb

23

กดCtrl+ Shift+F ป้อนคำอธิบายรูปภาพที่นี่

คลิกที่ 3 จุดใต้ช่องค้นหา

พิมพ์คำค้นหาของคุณในช่องค้นหา

พิมพ์ ./ FOLDERNAMEในไฟล์ที่จะรวมกล่องและคลิกEnter

ทางเลือกนี้คือคลิกขวาที่โฟลเดอร์และเลือกค้นหาในโฟลเดอร์


ฉันกำลังมองหาคุณสมบัตินี้ตลอดไปใน VSCode และมันถูกต้องภายใต้จมูกของฉันตลอดเวลา
nocarrier

ขอบคุณมากฉันกำลังมองหาวิธีการค้นหาในโฟลเดอร์เฉพาะ จนถึงตอนนี้ฉันใช้ประเสริฐเพื่อค้นหาในโฟลเดอร์เฉพาะ
shashi verma

17

Ctrl+ P(Win, Linux), Cmd+ P(Mac) - เปิดอย่างรวดเร็ว, ไปที่ไฟล์


6
ซึ่งจะตรงกับชื่อไฟล์เท่านั้นไม่ใช่ข้อความภายในไฟล์
LearnOPhile

11

การกระทำนี้ไม่ได้ผูกไว้กับคีย์เป็นค่าเริ่มต้นการผูกให้ทำ:

  1. ไฟล์> ค่ากำหนด> แป้นพิมพ์ลัด ( Ctrl+K, Ctrl+S)
  2. ค้นหา "ค้นหาโฟลเดอร์"
  3. กดไอคอน + ที่ด้านซ้ายของผลการค้นหา "filesExplorer.findInFolder"
  4. ป้อนคีย์ผสมที่คุณต้องการ

10

ฉันคิดว่าคำแนะนำอย่างเป็นทางการเหล่านี้ควรใช้กับกรณีของคุณ

รหัส VS ช่วยให้คุณสามารถค้นหาไฟล์ทั้งหมดในโฟลเดอร์ที่เปิดอยู่ในปัจจุบันได้อย่างรวดเร็ว กด Ctrl + Shift + F และป้อนคำค้นหาของคุณ ผลการค้นหาจะถูกจัดกลุ่มเป็นไฟล์ที่มีคำค้นหาพร้อมกับระบุจำนวนครั้งในแต่ละไฟล์และตำแหน่งของมัน ขยายไฟล์เพื่อดูตัวอย่างของเพลงทั้งหมดในไฟล์นั้น จากนั้นคลิกหนึ่งครั้งที่หนึ่งใน Hit เพื่อดูในเครื่องมือแก้ไข



6

หากต้องการเพิ่มข้างต้นหากคุณต้องการค้นหาภายในโฟลเดอร์ที่เลือกให้คลิกขวาที่โฟลเดอร์และคลิก "ค้นหาในโฟลเดอร์" หรือการเชื่อมโยงคีย์เริ่มต้น:

Alt+ Shift+F

ตามที่ได้กล่าวไปแล้วในการค้นหาโฟลเดอร์ทั้งหมดในโครงการของคุณคลิกแก้ไข> "ค้นหาในไฟล์" หรือ:

Ctrl+ Shift+F


4

หากคุณมีไดเรกทอรีเปิดอยู่ใน VSCode และต้องการค้นหาไดเรกทอรีย่อยให้ทำดังนี้:

  • ctrl- shift- Fจากนั้นในfiles to includeฟิลด์ป้อนพา ธ ด้วยการนำ./หน้า

หรือ

  • ctrl- shift- Eเพื่อเปิด Explorer คลิกขวาที่ไดเรกทอรีที่คุณต้องการค้นหาและเลือกFind in Folder...ตัวเลือก

3
  1. ป้อนคำค้นหาในการค้นหา (CTRL + SHIFT + F)

  2. ยกเว้นโฟลเดอร์ / ไฟล์ที่ไม่ต้องการโดยใช้ตัวเลือกแยก (!)

    เช่น: โฟลเดอร์ / ไฟล์ *

  3. กด Enter

ผลการค้นหาให้ผลลัพธ์ที่คุณต้องการ


1

และโดยวิธีการที่คุณเพื่อน googler สำหรับการเลือกหลายโฟลเดอร์ในการค้นหาคุณแยกไดเรกทอรีของคุณด้วยเครื่องหมายจุลภาค ทำงานได้ทั้งการยกเว้นและรวม

ตัวอย่าง: ./src/public/,src/components/


1

สิ่งที่ไม่ชัดเจนคือคุณสามารถใช้รูปแบบต่อไปนี้เพื่อค้นหาซ้ำ

./src/**/*.html

ดังนั้นอาจปล่อยให้สิ่งต่อไปนี้เป็นค่าเริ่มต้นสำหรับการค้นหาทั่วไปส่วนใหญ่เพื่อเตือนว่ามีสิ่งนั้นอยู่

./src/**/

ตัวอย่างเช่นฉันหลังจากแอตทริบิวต์สำหรับเนื้อหาที่ถูกต้องด้านขวา / เชื่อมต่อฉันจำไม่ได้ว่ายกเว้น "เริ่มต้น" ดังนั้นฉันจึงค้นหาต่อไปนี้ซึ่งแสดงให้ฉันเห็น "รายการเริ่มต้น"

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

นี่ทำให้เค้าโครงของฉันคงที่ ป้อนคำอธิบายรูปภาพที่นี่

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

นี่คือตำแหน่งที่ "item-sart" ไปในเทมเพลต ป้อนคำอธิบายรูปภาพที่นี่


0

ค้นหาข้ามไฟล์ - กด Ctrl+Shift+F

ค้นหา - กด Ctrl+F

ค้นหาและแทนที่ - Ctrl+H

สำหรับตัวเลือกการแก้ไขพื้นฐานให้ไปที่ลิงค์นี้ - https://code.visualstudio.com/docs/editor/codebasics

หมายเหตุ: สำหรับ mac Ctrl แสดงถึงปุ่มคำสั่ง


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