Score:0

ซิปไฟล์ทั้งหมดที่ส่งคืนจากคำสั่ง "grep-ril"

ธง lc

ฉันกำลังใช้ grep -ril เพื่อให้สามารถดูไฟล์ทั้งหมดที่มีสตริงบางอย่าง:

[user@machine]$ grep -ril "ทดสอบสตริง"
ไฟล์ 1.log
ไฟล์ 2.log
ไฟล์ 3.log
ไฟล์ 4.log
...

ฉันต้องการซิปไฟล์ทั้งหมดที่ส่งคืนโดยคำสั่งนั้น เป็นไปได้ไหม

ฉันได้ลองสิ่งต่าง ๆ เช่น grep -ril myPattern | ไฟล์ zip.zip และ grep -ril myPattern | zip > ไฟล์.zip แต่จนถึงขณะนี้ยังไม่มีอะไรได้ผล

มีวิธีแก้ปัญหานี้หรือไม่?

ขอขอบคุณ.

Score:2
ธง cn
Bob

ใช้ ซิป สวิตช์บรรทัดคำสั่ง -@ เพื่อที่จะมี ซิป รับรายการไฟล์อินพุตจากอินพุตมาตรฐานแทนจากบรรทัดคำสั่ง ตัวอย่างเช่น,

grep -ril "ทดสอบสตริง" | ชื่อ zip ของไฟล์ zip ใหม่ -@ 
Score:0
ธง in

คุณสามารถลองคำสั่งด้วยวิธีนี้:

zip zipfile.zip `grep -ril "ทดสอบสตริง"`
Ginnungagap avatar
gu flag
สิ่งนี้ได้รับผลกระทบจากปัญหา "ไฟล์ใด ๆ ที่มีช่องว่างหรือเริ่มต้นด้วยเส้นประ" ซึ่งทำให้ไม่ทั่วไปไม่เสถียรและเป็นนิสัยที่ไม่ดีโดยทั่วไปเนื่องจากอาจทำให้เกิดปัญหาด้านความปลอดภัยในบางกรณี
Romeo Ninov avatar
in flag
@Ginnungagap IMHO เหมือนกันสำหรับคำตอบของ Bob
Ginnungagap avatar
gu flag
มันอาจมีปัญหาจากการขึ้นบรรทัดใหม่ในชื่อไฟล์ แต่ก็ไม่ได้รับความเสียหายจากไฟล์ชื่อ `-o` (ตัวอย่าง) ที่ถูกตีความเป็นสวิตช์บรรทัดคำสั่งโดย `zip` และไม่ได้รับความเสียหายจาก `ชื่อไฟล์ที่มีช่องว่าง' (อีกครั้งสำหรับ ตัวอย่าง) ถูกตีความเป็น 3 ไฟล์แยกกัน และตามกฎทั่วไป การไพพ์จะดีกว่าการขยายในบรรทัดคำสั่ง เนื่องจากไม่น่าจะเปลี่ยนลักษณะการทำงานของโปรแกรมที่เรียกใช้
Ginnungagap avatar
gu flag
ที่จริง เมื่อมองหาเอกสารที่แสดงสิ่งนี้ ฉันสะดุดกับ [this](https://insinuator.net/2014/12/revisiting-an-old-friend-shell-globbing/) ซึ่งอธิบายปัญหาและแสดงรายการ `zip ` เป็นปัญหาด้านความปลอดภัยที่มีการเรียกใช้ประเภทนี้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา