صفحه نخست

پنجاه مثال تک خطی sed - بخش پنجم

در مثال‌های شماره ۱ تا ۵ محتوای فایل data.txt به شرح زیر می‌باشد:

Bash
$ cat data.txt
     1	This is line number: #0!
     2	This is line number: #1
     3	This is line number: #1
     4	This is line number: #2
     5	This is line number: #2
     6	This is line number: #2
     7	This is line number: #4
     8	This is line number: #5
     9	This is line number: #6
    10	This is line number: #6
    11	This is line number: #6
    12	This is line number: #7

چنانچه نیاز به توضیحی باشد آن را در زیر همان مثال بیان خواهیم کرد.

مثال 1) خطوط ۱ تا ۱۰ را پاک کنید.

Bash
$ sed '1,10 d' data.txt
    11	This is line number: #6
    12	This is line number: #7

مثال 2) خط آخر را حذف کنید.

Bash
$ sed '$ d' data.txt
     1	This is line number: #0!
     2	This is line number: #1
     3	This is line number: #1
     4	This is line number: #2
     5	This is line number: #2
     6	This is line number: #2
     7	This is line number: #4
     8	This is line number: #5
     9	This is line number: #6
    10	This is line number: #6
    11	This is line number: #6

مثال 3) خط‌های مضرب ۳ را حذف کنید.

Bash
$ sed '0~3 d' data.txt
     1	This is line number: #0!
     2	This is line number: #1
     4	This is line number: #2
     5	This is line number: #2
     7	This is line number: #4
     8	This is line number: #5
    10	This is line number: #6
    11	This is line number: #6

مثال 4) ۵ خط آخر را حذف کنید.

Bash
$ sed -n ':a N; 1,5 ba; P;D' data.txt
     1	This is line number: #0!
     2	This is line number: #1
     3	This is line number: #1
     4	This is line number: #2
     5	This is line number: #2
     6	This is line number: #2
     7	This is line number: #4

مثال 5) دو خط آخر را حذف کنید.

Bash
$ sed ':a N;$ {1d;2d; s/\(.*\)\n.*\n.*$//;q}; ba' data.txt
     1	This is line number: #0!
     2	This is line number: #1
     3	This is line number: #1
     4	This is line number: #2
     5	This is line number: #2
     6	This is line number: #2
     7	This is line number: #4
     8	This is line number: #5
     9	This is line number: #6
    10	This is line number: #6

در مثال‌های شماره ۶ تا ۱۰ محتوای فایل data.txt به شرح زیر است:

Bash
$ cat data.txt
This is line number: #0!
This is line number: #1
This is line number: #1
This is line number: #2
This is line number: #2
This is line number: #2
This is line number: #4
This is line number: #5
This is line number: #6
This is line number: #6
This is line number: #6
This is line number: #7

مثال 6) خط‌های تکراری پشت سر هم را حذف کنید. (مشابه دستور uniq)

Bash
$ sed ':a N; s/^\(.*\)\n//;ta;P;D' data.txt
This is line number: #0!
This is line number: #1
This is line number: #2
This is line number: #4
This is line number: #5
This is line number: #6
This is line number: #7

مثال 7) خط‌های تکراری را نمایش دهید. (مشابه دستور uniq -d)

Bash
$

مثال 8 خط‌های غیر تکراری را نمایش دهید. (مشابه دستور uniq -u)

Bash
$

مثال 9) خطوط حاوی عبارات 2# و 4# را نمایش دهید.

Bash
$ sed -n '/#2/ p; /#4/ p' data.txt
This is line number: #2
This is line number: #2
This is line number: #2
This is line number: #2
This is line number: #4

مثال 10) کاراکترهای هر خط را معکوس کنید. (مشابه دستور rev)

Bash
$ sed 's/$/\n/; :a s/^\([^\n]\)\(.*\n\)\(.*\)$//;ta; s/\n//' data.txt
!0# :rebmun enil si sihT
1# :rebmun enil si sihT
1# :rebmun enil si sihT
2# :rebmun enil si sihT
2# :rebmun enil si sihT
2# :rebmun enil si sihT
2# :rebmun enil si sihT
4# :rebmun enil si sihT
5# :rebmun enil si sihT
6# :rebmun enil si sihT
6# :rebmun enil si sihT
6# :rebmun enil si sihT
7# :rebmun enil si sihT

نظر شما



 
 
 

 

کلیه حقوق برای دارنده‌ی سایت محفوظ است.