คำถามติดแท็ก search

การค้นหาใช้สำหรับคำถามที่เกี่ยวข้องกับการค้นหาผ่านเนื้อหาของไฟล์ สำหรับการค้นหาชื่อไฟล์โดยใช้คำสั่งค้นหาใช้แท็กค้นหา

5
วิธีค้นหาไฟล์ที่มีสองคำที่แตกต่างกันอยู่?
ฉันกำลังมองหาวิธีการค้นหาไฟล์ที่มีอินสแตนซ์ของคำสองคำอยู่ในไฟล์เดียวกัน ฉันใช้สิ่งต่อไปนี้เพื่อทำการค้นหาจนถึงจุดนี้: find . -exec grep -l "FIND ME" {} \; ปัญหาที่ฉันพบคือหากไม่มีช่องว่างตรงระหว่าง "FIND" และ "ME" ผลการค้นหาจะไม่ให้ไฟล์ ฉันจะปรับสตริงการค้นหาเดิมที่ทั้งคำว่า "FIND" และ "ME มีอยู่ในไฟล์ได้อย่างไรเมื่อเทียบกับ" FIND ME " ฉันใช้ AIX
14 grep  find  search 

3
ค้นหาแบบไบนารีในไฟล์ข้อความที่เรียงลำดับ
ฉันมีไฟล์เรียงลำดับขนาดใหญ่ที่มีความยาวหลายพันล้านบรรทัด รับสายใหม่ฉันต้องการที่จะรู้ว่าจำนวนไบต์มันจะได้รับถ้ามันถูกรวมอยู่ในไฟล์ที่เรียง ตัวอย่าง a\n c\n d\n f\n g\n รับอินพุต 'foo' ฉันจะได้ผลลัพธ์ 9 สิ่งนี้ทำได้ง่ายเพียงแค่ทำการผ่านไฟล์ทั้งหมด แต่การที่มีความยาวของตัวแปรหลายพันล้านบรรทัดมันจะเร็วกว่าที่จะทำการค้นหาแบบไบนารี เครื่องมือการประมวลผลข้อความมีอยู่แล้วหรือไม่? แก้ไข: มันทำตอนนี้: https://gitlab.com/ole.tange/tangetools/blob/master/bsearch/bsearch

2
มีคำสั่ง reverse search เป็นกลุ่มหรือไม่?
ใน linux cli ฉันสามารถทำctrl-rและทำการค้นหาแบบย้อนกลับและเลือกสิ่งที่ฉันทำได้อย่างง่ายดาย มีอะไรที่คล้ายกันเป็นกลุ่ม? ฉันหมายถึงฉันอาจเรียกใช้คำสั่งโดยใช้:(อาจเป็นอะไรก็ได้เช่นการทดแทนระยะยาว) และถ้าฉันต้องทำมันอีกครั้งฉันต้องพิมพ์ใหม่อีกครั้ง มีวิธีการหลีกเลี่ยงการพิมพ์ซ้ำ แต่กลับค้นหาและดำเนินการแทนได้หรือไม่?
13 vim  search 

3
ค้นหาคำสั่งในประวัติศาสตร์ด้วยคำหลักที่ไม่ต่อเนื่อง
ฉันสงสัยว่าจะค้นหาคำสั่งในประวัติศาสตร์โดยไม่ทราบตัวอักษรสองสามตัวแรกของคำสั่งได้อย่างไร เมื่อค้นหาโดยใช้Ctrl- Rใน bash เราจะต้องให้ตัวอักษรสองสามตัวแรกของคำสั่ง ถ้าฉันรู้จักตัวละครบางตัวที่อยู่ตรงกลางหรือบางตัวที่จุดเริ่มต้นและบางตัวที่อยู่ตรงกลาง ตัวอย่างเช่นในการค้นหาcat myfileฉันรู้เพียงว่ามีอยู่atในนั้นหรือcที่จุดเริ่มต้นและmyตรงกลางที่ใดที่หนึ่ง คำหลักจะต้องอยู่ในตำแหน่งอย่างต่อเนื่อง ยกตัวอย่างเช่นในcat myfileผมอยากที่จะค้นหาทั้งcและmyแต่Ctrl+Rจะไม่อนุญาตให้มีการระบุทั้งสองพร้อมกัน

4
Vim: s แทนที่ N <g แรกที่เกิดขึ้นในบรรทัด
ในกลุ่มบางครั้งผมมีโอกาสที่จะเปลี่ยนที่เกิดขึ้นไม่กี่แรกของการแข่งขันบนเส้น แต่ไม่เหมือนทุกgหากว่า เช่น: a a a a a ถึง b b b a a ฉันรู้ว่าฉันสามารถใช้งาน:s/a/b/[enter]:[up][enter]:[up][enter]ได้ แต่มันน่าเบื่อพอสำหรับการทำซ้ำสามครั้งฉันมีบรรทัดที่มีการแทนที่มากกว่า 10 รายการ ฉันพยายามแล้ว: :s/a/b/3g: เป็นกลุ่มบ่นของตัวอักษรต่อท้าย :s/a/b/3: เปลี่ยนการเกิดขึ้นครั้งแรกในสิ่งนี้และสองบรรทัดต่อไปนี้ 3:s/a/b: เหมือนก่อนหน้านี้ :s/a/b/g3: เปลี่ยนสิ่งที่เกิดขึ้นทั้งหมดนี้และสองบรรทัดถัดไป :3s/a/b: เปลี่ยนการเกิดขึ้นครั้งแรกในบรรทัดที่ 3 :/a/,3/a/s/a/b: การเปลี่ยนแปลงที่เกิดขึ้นครั้งแรกในแต่ละบรรทัดระหว่างบรรทัดถัดไปaและบรรทัดที่สามที่มีaอยู่ในไฟล์ (พร้อมท์ให้ย้อนกลับหากจำเป็น) :/a/,/\([^a]*a\)\{3\}/s/a/b/: เปลี่ยนเหตุการณ์ที่เกิดขึ้นครั้งแรกในแต่ละบรรทัดระหว่างสิ่งนี้และสิ่งต่อไปด้วย 3 aวินาทีบนสิ่งนั้น และรูปแบบการกำหนดแอดเดรสอื่น ๆ ที่หลากหลายซึ่งไม่ได้ผล ฉันต้องบอกว่าฉันได้เรียนรู้จำนวนพอสมควรเกี่ยวกับ:sคำสั่งที่พยายามค้นหาคำตอบสำหรับปัญหานี้ แต่ฉันยังไม่ได้แก้ไข ใครรู้วิธีการทำเช่นนี้? (คะแนนโบนัสสำหรับช่วงที่เฉพาะเจาะจงเช่นที่สองถึงเหตุการณ์ที่สี่)
13 vim  search  replace 

4
ค้นหาหน้าคนที่มีคำว่า 'foo' 'bar' และ 'baz' ทั้งหมด
ฉันต้องการค้นหาหน้าคนที่มีคำว่า 'foo', 'bar' และ 'baz' ทั้งหมด ถ้าเป็นไปได้ฉันต้องการค้นหาข้อความทั้งหมด (ไม่ใช่แค่ชื่อ &amp; คำอธิบาย) ของหน้าเว็บทั้งหมด ฉันคาดเดาบางอย่างเช่น man -K foo AND bar AND baz
12 search  man 

5
วิธีการฆ่าอย่างงดงาม
หลังจากสคริปต์ทุบตีของฉันทำกับเซิร์ฟเวอร์ซีลีเนียมแล้วสคริปต์ก็จะฆ่าแบบนี้: kill `ps -ef | grep selenium | awk '{ print $2 }'` ในขณะที่มันใช้งานได้และมันจะฆ่าสคริปต์ซีลีเนียมมันก็พยายามที่จะฆ่ากระบวนการสำหรับgrep seleniumดังนั้นตามเวลาที่หมายเลขกระบวนการกลับไปที่คำสั่ง kill กระบวนการจะหายไปดังนั้นจึงสิ้นสุดการสร้างข้อความแสดงข้อผิดพลาด (ในคำอื่น ๆ : มันจบลงด้วยการฆ่าสองกระบวนการหนึ่งในนั้นคือเซิร์ฟเวอร์ซีลีเนียมจริงอีกกระบวนการหนึ่งเป็นกระบวนการที่หายวับไปซึ่งเป็นผลข้างเคียงของวิธีที่ฉันทำตามคำสั่งนี้) มีวิธีที่สง่างามกว่าในการฆ่ากระบวนการที่ไม่มีผลข้างเคียงนี้หรือไม่? (FWIW หนึ่งความคิดที่ฉันมี: สคริปต์เดียวกันนี้เริ่มต้นขึ้นในซีลีเนียมก่อนหน้านี้ในสคริปต์ดังนั้นอาจจะมีวิธีที่ฉันสามารถจับ PID ได้เมื่อฉันเริ่มต้นซีลีเนียมฉันสามารถเก็บมันไว้และฆ่ามันโดยตรงแทนที่จะเป็น grepping ID กระบวนการปัญหาคือฉันไม่รู้วิธีรับ PID นั้นวิธีใช้ตัวแปรเพื่อเก็บมันและวิธีอ้างอิงในสคริปต์ในภายหลัง แต่วิธีนี้เป็นวิธีที่ดีกว่าหรือไม่)
12 process  search  kill 


4
เป็นกลุ่มค้นหารอบตัวแบ่งบรรทัด
เมื่อฉันแก้ไขเอกสาร LaTeX เป็นกลุ่มบ่อยครั้งที่ฉันต้องการค้นหาวลี เนื่องจากฉันมีการตั้งค่า LaTeX เพื่อตัดบรรทัดบางครั้งครึ่งหนึ่งของวลีจะเป็นหนึ่งบรรทัดในขณะที่อีกครึ่งหนึ่งอยู่ถัดไป ในกรณีเช่นนี้การค้นหาไม่พบสิ่งที่ฉันกำลังมองหา ตัวอย่างเช่น blah blah blah hello world blah blah blah เมื่อค้นหาโดยใช้/hello worldฉันไม่พบสิ่งที่ฉันกำลังมองหา มีวิธีที่ง่ายและรวดเร็วในการปรับเปลี่ยนการค้นหานี้เพื่อให้ได้ตำแหน่งที่ต้องการหรือไม่? หรือวิธีที่ดีกว่าที่จะบอก vim ให้ตรงกับช่องว่างสีขาว (ช่องว่างแท็บบรรทัดใหม่) กับช่องว่างในสตริงการค้นหา
12 vim  search 

1
เครื่องมือค้นหาบรรทัดคำสั่งที่เป็นมิตรสำหรับใช้กับลิงค์
มีเครื่องมือค้นหาใดที่เป็นมิตรพอที่จะใช้ในลิงค์หรือไม่ บางทีพร็อกซี google ที่ไม่มีความยุ่งเหยิงฉันพบว่า Google ใช้การนำทางจำนวนมากผ่านลิงก์จำนวนมากก่อนที่จะสามารถวางเคอร์เซอร์ในแถบค้นหาโดยใช้น้อยกว่าเป็ดเป็ดไปเกือบจะอยู่ที่นั่น แต่ผลการค้นหาจะดีขึ้น ใน google ในความคิดของฉัน มีเครื่องมือค้นหาที่ดีกว่าที่ฉันสามารถใช้หรืออาจเป็นสิ่งที่ฉันสามารถทำได้ในลิงค์เพื่อไปยังกล่องค้นหาได้เร็วขึ้นโดยใช้ปุ่มลูกศร
11 search  web  links 

1
Terminator: ทางลัดสำหรับก่อนหน้าและถัดไป
ในterminatorแป้นพิมพ์ลัดจะCtrl+Shift+Fเปิดแถบเล็ก ๆ ที่ด้านล่างของหน้าต่างเพื่อให้ผู้ใช้ค้นหาสตริงข้อความภายใน scrollback เทอร์มินัล มีแป้นพิมพ์ลัดใด ๆ สำหรับการย้ายไปยังรายการที่ตรงกันถัดไปหรือก่อนหน้าในการค้นหานี้หรือไม่? เอกสารที่สมบูรณ์ที่สุดที่ฉันพบสำหรับ Terminator นั้นรวมอยู่ในเอกสารของ Ubuntu แต่ไม่ครอบคลุมถึงรายละเอียดของหัวข้อนี้

2
จะค้นหาข้อความในไฟล์โดยไม่สนใจบรรทัดใหม่ได้อย่างไร
ฉันต้องการค้นหาข้อความที่อาจแบ่งออกเป็นหลายบรรทัดในไฟล์ grep ที่จะละเว้นการแบ่งบรรทัดและส่งคืนช่วงการจับคู่ของบรรทัด เช่นฉันจะค้นหาis an example fileและคาดหวังว่าจะพบได้ในไฟล์ต่อไปนี้: นี่คือ ไฟล์ตัวอย่าง การไม่ขึ้นอยู่กับช่องว่างนำหน้าหรือตามหลังการละเว้นพื้นที่สีขาวทั้งหมดในรูปแบบทั้งหมดอาจดีที่สุด (โดยหลักการแล้วการปฏิบัติตามลำดับของพื้นที่สีขาวเป็นพื้นที่เดียว) ทางออกที่ไม่เหมาะอย่างหนึ่งคือtr '\n' ' ' | grepการจำแนกระหว่างการจับคู่และการจับคู่ที่ไม่ตรงกัน แต่ไม่แสดงการจับคู่หรือจัดการกับไฟล์ขนาดใหญ่ได้ดี

2
ค้นหากรณีและรักษาเป็นกลุ่มในการรักษา?
ในvimฉันรู้ว่าฉันสามารถค้นหาโดยใช้ความไวตัวพิมพ์เล็กและใหญ่ แต่ถ้าฉันต้องการค้นหาสตริงในตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กและแทนที่ด้วยการแทนที่ตัวพิมพ์เดียวกันนั้นเป็นไปได้:s///หรือไม่? ตัวอย่างเช่นฉันต้องการเปลี่ยนบรรทัดเหล่านี้: short Short SHORT ถึง long Long LONG ฉันสามารถทำได้ในสาม:sคำสั่งหรือหนึ่งตาย:sและไปแก้ไขกรณีด้วยตนเอง แต่จะมีวิธีที่ดีกว่า การค้นหาและแทนที่กรณีเล็ก ๆ น้อย ๆ ?

5
grep วิธีการระงับการแสดงไฟล์ที่ไม่ตรงกัน?
ฉันพยายามค้นหาไฟล์ที่มีคำเฉพาะที่ใช้grepอยู่ มีไฟล์จำนวนมากในไดเรกทอรี (&gt; 500) คำสั่งที่ฉันวิ่ง $ grep 'delete' * เอาท์พุต validate_data_stage1:0 validate_data_stage2:0 validate_data_stage3:0 validate_data_stage4:0 validate_data_stage5:0 validate_input_stage1:0 validate_input_stage2:0 validate_input_stage3:0 validate_input_stage4:0 .... and hundred of such lines ไฟล์เหล่านี้เป็นไฟล์ที่ไม่มีการจับคู่ที่กำหนด ฉันต้องการระงับบรรทัดเหล่านั้นไม่ให้แสดงจนถึง stdout ฉันรู้ว่า-qสวิตช์ แต่นั่นจะระงับเอาต์พุตทั้งหมดซึ่งฉันไม่ต้องการ ฉันจะทำอย่างไร

3
ฉันสามารถบังคับให้ 'man' ทำการจับคู่ตัวพิมพ์เล็กและตัวพิมพ์เล็กได้หรือไม่
เมื่อฉันค้นหาหน้าคนการค้นหาจะพิจารณาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ แต่เกี่ยวข้องกับตัวอักษรตัวพิมพ์ใหญ่เท่านั้น เช่นxจะตรงxและXในขณะที่เพียงการแข่งขันX xนี่คือman-dbรุ่นของมนุษย์ที่ใช้กับระบบที่ได้รับจาก fedora โดยค่าเริ่มต้นและมีให้สำหรับผู้อื่น กล่าวว่าเพจเจอร์เริ่มต้นคือ man man ไม่ได้ถูกกำหนดในสภาพแวดล้อมฉันเป็นเพียงแค่และฉันไม่มีนามแฝงสำหรับน้อยless -s$LESS$PAGERless นี่ไม่ใช่พฤติกรรมเมื่อฉันเรียกใช้lessด้วยตัวเอง อย่างไรก็ตามมีการบังคับให้ตัวพิมพ์เล็กxให้ตรงกับตัวพิมพ์เล็กxเมื่อใช้manหรือไม่

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