sedเครื่องมือที่ง่ายที่สุดที่นี่อาจจะเป็น ที่จะแทรกb.txtเข้าไปในa.txtหลังจากที่สาย 5, คุณสามารถเขียน:
sed '5r b.txt' a.txt
sedอ่านไฟล์ที่ระบุเป็นอาร์กิวเมนต์ ( a.txt) ทีละบรรทัด บรรทัดทั้งหมดได้รับการทำซ้ำในผลลัพธ์เช่นเดียวกับที่ปรากฏในอินพุตเว้นแต่ว่าพวกเขาจะได้รับการแก้ไขโดยคำสั่ง
นี่5คือที่อยู่ (หมายเลขบรรทัด) ซึ่งคำสั่งต่อไปนี้จะต้องถูกดำเนินการ คำสั่งที่เราใช้คือrซึ่งใช้ชื่อไฟล์เป็นอาร์กิวเมนต์ (ที่นี่b.txt) อ่านอย่างสมบูรณ์และแทรกลงในเอาต์พุตหลังจากบรรทัดปัจจุบัน
sedบรรทัดคำสั่งนี้จะพิมพ์เอาต์พุตไปยังเทอร์มินัลเท่านั้นโดยไม่ต้องเขียนลงไฟล์ใด ๆ คุณสามารถเปลี่ยนเส้นทางไปยังไฟล์ใหม่ (ไม่ใช่ไฟล์อินพุตใด ๆ !) โดยใช้การเปลี่ยนเส้นทางของ Bash:
sed '5r b.txt' a.txt > c.txt
หรือคุณโดยตรงสามารถปรับเปลี่ยนแฟ้มใส่ด้านนอกa.txtโดยใช้sed's -i(สำหรับ 'ในสถานที่') สวิทช์ หากคุณเขียนมัน-i.bakจะทำสำเนาสำรองของไฟล์อินพุตดั้งเดิมด้วยคำต่อท้าย.bakก่อน:
sed -i '5r b.txt' a.txt
ตัวอย่าง:
$ cat a.txt
January
February
March
April
May
October
November
December
$ cat b.txt
June
July
August
September
$ sed '5r b.txt' a.txt
January
February
March
April
May
June
July
August
September
October
November
December