Score:0

วิธีบันทึกเอาต์พุตคำสั่งไปยังบรรทัดเฉพาะของไฟล์ข้อความ

ธง dk

ฉันต้องการทราบวิธีบันทึกเอาต์พุตคำสั่งไปยังบรรทัดเฉพาะของไฟล์ข้อความ

ฉันค้นหาเกี่ยวกับปัญหานี้บนอินเทอร์เน็ตเป็นเวลาประมาณหนึ่งชั่วโมง แต่ฉันไม่พบคำตอบที่เหมาะสม

ตัวอย่างเช่น:

ฉันต้องการบันทึกผลลัพธ์ของบางส่วน คำสั่งไปยังบรรทัดที่ 7 ของ ตัวอย่าง. txt. (ขึ้นบรรทัดใหม่)

ฉันจะทำอย่างไร

ขอบคุณล่วงหน้า.

HuHa avatar
es flag
นี่อาจเป็นสิ่งที่คุณต้องการ: https://unix.stackexchange.com/questions/70878/replaces-string-based-on-line-number
hr flag
คุณต้องการเขียนทับบรรทัดที่ 7 ที่มีอยู่หรือไม่ หรือขึ้นบรรทัดใหม่ก่อนหรือหลัง?
カラス avatar
dk flag
@steeldriver ใส่อันใหม่
Score:2
ธง hr

คุณสามารถใช้ sed's คำสั่งเพื่ออ่านและแทรกเอาต์พุตคำสั่งหลังจากที่อยู่ที่กำหนดโดยเฉพาะอย่างยิ่ง GNU sed ให้ชื่อไฟล์พิเศษ /dev/stdin เพื่ออ่านข้อมูลจากอินพุตมาตรฐาน

ตัวอย่างเช่นให้

ตัวอย่างแมว $.txt
บรรทัดที่ 1
บรรทัดที่ 2
บรรทัดที่ 3
บรรทัดที่ 4
บรรทัดที่ 5
บรรทัดที่ 6
บรรทัดที่ 7
บรรทัดที่ 8
บรรทัดที่ 9
บรรทัดที่ 10

แล้ว

$ ls -l example.txt | sed -i '7r/dev/stdin' example.txt

ส่งผลให้

ตัวอย่างแมว $.txt
บรรทัดที่ 1
บรรทัดที่ 2
บรรทัดที่ 3
บรรทัดที่ 4
บรรทัดที่ 5
บรรทัดที่ 6
บรรทัดที่ 7
-rw-r--r-- 1 steeldriver steeldriver 71 มิ.ย. 28 15:52 example.txt
บรรทัดที่ 8
บรรทัดที่ 9
บรรทัดที่ 10

หากคุณต้องการแทรกเอาต์พุตคำสั่ง ก่อน บรรทัดที่ 7 แล้วอ่านและใส่หลังบรรทัดที่ 6

カラス avatar
dk flag
มันได้ผล! ขอบคุณมาก.

โพสต์คำตอบ

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