ค้นหาข้อความที่ระบุจากไฟล์และส่งบรรทัด (สคริปต์ Shell)


12

สมมติว่าฉันมีตัวแปร $ str1

str1="20140121-21:48:26|Joanne Frances|"

สิ่งที่ฉันต้องการทำคือค้นหาส่วนนั้นในไฟล์ ไฟล์มีตัวอย่างเช่น:

20140121-21:48:26|Joanne Frances|Perez|9173046751.000000|Mar 31|
20140121-21:50:28|Nikko|Real|9065887272.000000|Mar 21|
20140121-22:22:53|Czarina|Revilla|9999999999.000000|Jan 21|

ผลลัพธ์ควรเป็น:

20140121-21: 48: 26 | Joanne Frances | เปเรซ | 9173046751.000000 | 31 มีนาคม

อัปเดต: ในที่สุดก็รู้ว่าสิ่งที่ heck เป็นปัญหาพยายามecho $str1และมันออกมา20140121|Adrian Perez|หมายความว่ามันไม่ได้จริงๆในไฟล์ Haaa! ฉันช่างเป็นระเบียบ! -_-


คุณสามารถใช้ grep ได้ เช่นgrep $str filename.txt
mcantsin

@cantin ฉันลองแล้วมันใช้ไม่ได้เลย
joanne_

และข้อผิดพลาดคืออะไร? - ไม่มีการส่งออก?
mcantsin

@cantsin yup ไม่มีผลลัพธ์!
joanne_

ฉันทดสอบตัวอย่างของคุณและทำงานได้อย่างสมบูรณ์แบบสำหรับฉัน - แน่ใจว่าไม่มีการพิมพ์ผิด?
mcantsin

คำตอบ:


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