- Insert text, which has each embedded newline preceded by a backslash.
- فرمان i مخفف کلمه Insert به معنی درج یا نوشتن میباشد.
- زمانی که از فرمان i در داخل قسمت دست نوشته استفاده میشود، تاکید میشود تا تغییراتی قبل از یافتن الگویی خاص اعمال شود.
- شاید توضیحات کمی گیج کننده باشد. اجازه دهید فهم و تسلط به این بخش را در قالب مثال دنبال کنیم.
مثال اول
- پرونده زیر را در نظر بگیرید :
|
1 2 3 |
line1 line2 line3 |
- اضافه کردن عبارت TEST قبل از خط دوم :
|
1 2 3 4 5 |
$ sed '2 i\TEST' input.txt line1 TEST line2 line3 |
مثال دوم
- پروندهی مثال قبل را در نظر بگیرید.
- اضافه کردن عبارت TEST قبل از خط یا خطیهایی که حاوی عبارت line3 باشند :
|
1 2 3 4 5 |
$ sed '/line3/ i\TEST' input.txt line1 line2 TEST line3 |
- نکته: ممکن است چندین خط حاوی عبارت line3 باشد، لذا عبارت TEST قبل از تمام خطوط آنان اضافه میشود.
مثال سوم
- پروندهی مثال قبل را در نظر بگیرید.
- اضافه کردن عبارت ——- قبل از تمامی خطوط موجود در فایل :
|
1 2 3 4 5 6 7 |
$ sed '/$/ i\-------' input.txt ------- line1 ------- line2 ------- line3 |
مثال چهارم
- پروندهی مثال قبل را در نظر بگیرید.
- اضافه کردن عبارت ——- قبل از آخرین خط موجود در فایل :
|
1 2 3 4 5 |
$ sed '$ i\-------' input.txt line1 line2 ------- line3 |
مثال پنجم
- پروندهی زیر را در نظر بگیرید :
|
1 2 3 4 |
line1 line2 line3 line4 |
- اضافه کردن کارکتر # قبل از خط ۳ تا آخرین خط موجود در فایل :
|
1 2 3 4 5 6 7 |
$ sed '3,$ i\#' input.txt line1 line2 # line3 # line4 |
- بررسی شده توسط نسخهی 4.7 ابزار SED