หากต้องการแสดงความคิดเห็นบรรทัดที่ 2 ถึง 4 ของ bla.conf:
sed -i '2,4 s/^/#/' bla.conf
เพื่อให้คำสั่งที่คุณต้องการเพียงแค่ใส่ข้างบนลงในเชลล์สคริปต์ชื่อ comment:
#!/bin/sh
sed -i "$1"' s/^/#/' "$2"
สคริปต์นี้ใช้เหมือนกับของคุณยกเว้นว่าบรรทัดแรกและบรรทัดสุดท้ายจะคั่นด้วยเครื่องหมายจุลภาคแทนที่จะเป็นเส้นประ ตัวอย่างเช่น:
comment 2,4 bla.conf
คำสั่ง uncomment สามารถสร้างแบบอะนาล็อกได้
คุณสมบัติขั้นสูง
sed
การเลือกบรรทัดมีประสิทธิภาพมาก นอกเหนือจากการระบุบรรทัดแรกและบรรทัดสุดท้ายตามหมายเลขแล้วยังสามารถระบุได้โดย regex ดังนั้นหากคุณต้องการคำสั่งทุกบรรทัดจากบรรทัดที่มีอยู่foo
ให้bar
ใช้:
comment '/foo/,/bar/' bla.conf
ระบบ BSD (OSX)
ด้วย BSD sed -i
ตัวเลือกต้องมีอาร์กิวเมนต์แม้ว่าจะเป็นเพียงสตริงว่าง ตัวอย่างเช่นแทนที่คำสั่งด้านบนด้วย:
sed -i '' '2,4 s/^/#/' bla.conf
และแทนที่คำสั่งในสคริปต์ด้วย:
sed -i '' "$1"' s/^/#/' "$2"
sed
,perl
และอื่น ๆ โดยเฉพาะโดย terdon!