สอบถาม
ฉันใช้ Bash เมื่อฉันค้นหาไฟล์บ่อยครั้งที่ฉันจะทำสิ่งต่อไปนี้:
find -name stackexchange.hs
และผลลัพธ์มักจะมีลักษณะดังนี้:
/youre/the/man/now/dog/stackexchange.hs
/you/are/no/longer/the/dog/dog/stackexchange.hs
/this/is/the/file/i/want/stackexchange.hs
จากนั้นฉันจะทำอย่างใดอย่างหนึ่งต่อไปนี้:
- ตัวเลือกที่ 1: เปิดรายการสุดท้ายในรายการผลลัพธ์ในกลุ่ม
- ตัวเลือกที่ 2: เปิดรายการชับในรายการผลลัพธ์ในกลุ่ม
ปัจจุบันฉันตัดและวางด้วยเมาส์ ซึ่งนำมาสู่คำถามของฉัน:
- มีซับในหนึ่งเดียวที่ง่ายต่อการบรรลุตัวเลือกที่ 1 และ 2 หรือไม่? ทราบว่านี้เกิดขึ้นหลังจากที่
findคำสั่ง - มีวิธีจับ N-line จาก stdout ใน bash vector / array หรือไม่?
การใช้งานในอุดมคติ
$ find -name am_i_really_all_alone.txt
./borges/library/you_are_not_alone.txt
./borges/library/am_i_really_all_alone.txt
$ vim (N)
(ไวยากรณ์และความหมายอาจแตกต่างกัน แต่คุณจะได้รับคะแนน)
Similaria
ดูเหมือนจะมีคำถามที่คล้ายกันหลายอย่าง นี่คือความแตกต่างที่ฉันรับรู้ (ฉันเปิดรับการตรัสรู้):
- "Open File Found with find Command"มุ่งเน้นไปที่การสร้างหนึ่งบรรทัดเพื่อไพพ์ชื่อไฟล์จาก
findเป็นvim(หรืออะไรก็ตาม) ในกรณีของฉันฉันต้องการfindก่อนอื่นทีหลัง (เพื่อพูด) การจับ / การใช้งานของฉันเกิดขึ้นอย่างเคร่งครัดหลังจากนั้น - "Reuse Last Output from Command Lind"ดูเหมือนว่าจะเรียบร้อยแล้ว แต่ดูเหมือนจะทำซ้ำคำสั่งและไม่พูดกับการจับเอาท์พุทบรรทัดNth ค่อนข้างตรงไปตรงมามันทำให้ฉันกลัว
- "การจับภาพเอาต์พุตแบบหลายบรรทัดของ Bash Builtin"อยู่ใกล้ แต่ไม่มากนัก
- "อะไรคือความแตกต่างที่แน่นอนระหว่างเทอร์มินัล, เชลล์, tty, คอนโซล ฯลฯ " อันนี้เป็นเพียงการอ่านที่ดีจริงๆ
ขอขอบคุณสำหรับความช่วยเหลือของคุณ! การใช้ * nix / BSD เมื่อฉันเป็นวัยรุ่นใน 90s และเริ่มกลัวโดยเรียกความเหนื่อยล้าเพื่อนบ้านที่มีหัวกรดของฉันเพื่อช่วยฉันติดตั้งไดรเวอร์สำหรับการ์ดเสียงแบบ plug-and-play ฉันโล่งใจที่จะพูดคุยเกี่ยวกับคำสั่ง - สาย minutiae กับบุคคลที่น่ากลัวน้อยลง รู้สึกดีที่ได้กลับมา
vim $(command |tail -n1)ผมคิดว่าถ้าคุณจะรู้ว่าก่อนที่คุณต้องการที่จะเปิดผลสุดท้ายคุณอาจใช้สิ่งที่ต้องการ