نکته :: فرمان Sed و کاربردهای آن
درخواست های ارتباط
جستجو
    لیست دوستان من
    صندوق پیام
    همه را دیدم
    • در حال دریافت لیست پیام ها
    صندوق پیام
    رویدادها
    همه را دیدم
    • در حال دریافت لیست رویدادها
    همه رویدادهای من
    تخفیف های وب سایت
    همه تخفیف ها

    عضویت در

    کانال تلگرام

    توسینسو

    اطلاعات دوره آموزشی

    مدت دوره

    6:21:10

    تعداد ویدیوها

    26

    تعداد کامنت ها

    32

    خرید دوره | 110,000

    حجم دوره: 770 مگابایت

    اطلاعات مطلب
      مدرس/نویسنده
      محمد عابدینی
      امتیاز: 77471
      رتبه:10
      413
      172
      21
      587
      سلام دوستان مدیر سایت mabedini.ir هستم. از سال ۱۳۸۱ با سیستم عامل های مبتنی بر BSD کار کردم. مقالات و فیلم های آموزشی در زمینه BSD تهیه کردم. یکی از سیستم عامل های مورد علاقه من OpenBSD است. عاشق کار با سیستم عاملهای متن باز عاشق کار با خط فرمان. پروفایل کاربر

      فرمان Sed و کاربردهای آن

      تاریخ 18 ماه قبل
      نظرات 3
      بازدیدها 236

      اضافه کردن جمله به اول خط و اجرا کردن آن


      در این بخش می خوام با چند قابلیت مهم در مورد Sed در خدمت شما دوستان باشم، یکی از قابلیت هایی که فرمان Sed داشت جابجا کردن کاراکترهاست. فرض کنید که فایل زیر را دارید:
      $cat file.txt
      /etc/passwd
      /etc/groups
      
      این فایل دارای دو خط است که مسیر دو فایل مشخص کرده، حال فرض کنید که قصد داریم که فرمان ls –l را به اول این مسیرها اضافه کنید فرمان زیر را از Sed اجرا کنید:
      #sed  ‘s/^/ls –l / ‘ file.txt
      ls –l  /etc/passwd
      ls –l   /etc/groups
      
      حال برای اجرا کردن این فرمان باید از سویچ e استفاده کنید به صورت زیر:
      #sed  ‘s/^/ls –l /e ‘ file.txt
      

      در خروجی این فرمان خروجی فرمان ls را مشاهده می کنید.

      تغییر دادن مسیر:


      برای تغییر دادن مسیر به دلیل اینکه کاراکتر خودش در فرمان sed باید از کاراکتر \ برای جداسازی استفاده کنید، فرض کنید که فایلی شامل مسیر های usrlocalbin است و شما قصد دارد که مسیر آنرا به usrbin تغییر دهید برای انجام دادن این بخش از فرمان Sed به صورت زیر استفاده کنید، فرض کنید که فایلی به نام path.txt به صورت زیر ایجاد شده است:
      $ vi path.txt
      reading /usr/local/bin directory
      
      حال برای اجرا کردن فرمان sed باید به صورت زیر اقدام کنید:

      $ sed 's/\/usr\/local\/bin/\/usr\/bin/' path.txt
      reading /usr/bin directory
      

      قرار دادن کل خطوط یک متن در کاراکتر خاص:


      در برخی از موارد لازم است که شما برای جدا کردن خطوط یک فایل آنرا در کاراکترهای خاصی قرار دهید، در این مثال هر خط را داخل دو علامت < > قرار می دهیم برای این کار باید از کاراکتر & استفاده کنید، فرض کنید که فایل دارید به صورت زیر:
      #cat file.txt
      101 mohamma abedini
      102 mostafa asghari
      103 mohammad tondro
      

      حال برای قرار دادن همه کلمات هر خط در بین دو علامت < > از فرمان Sed به صورت زیر استقاده کنید:
      $ sed 's/^.*/<&>/' file.txt
      

      خروجی این فرمان به صورت زیر است :
      #cat file.txt
      <101 mohamma abedini>
      <102 mostafa asghari>
      <103 mohammad tondro>
      
      حال فرض کنید که فقط قصد دارید سه کاراکتر اول یعنی اعداد را داخل [ ] قرار دهید، از فرمان Sed به صورت زیر استفاده کنید:
      $ sed 's/^[0-9][0-9][0-9]/[&]/g' file.txt
      
      خروجی این فرمان به صورت زیر است:

      #cat file.txt
      [101] mohamma abedini
      [102] mostafa asghari
      [103] mohammad tondro
      

      حذف کردن همه تگ های یک فایل html:


      شما می توانید با استفاده از فرمان Sed و فرمان داخلی g تمامی تگهای یک فایل html را حذف کنید برای این منظور از فرمان Sed به صورت زیر استفاده کنید، فرض کنید فایلی html به صورت زیر دارید:

      $ vi test.html
      <html><body><h1>Hello World!</h1></body></html>
      
      حال بعد از اجرا فرمان Sed به صورت زیر این خروجی فایل تغییر بدون تگها خواهد بود:
      $ sed -e 's/<[^>]*>//g' test.html
      Hello World!
      


      برچسب ها
      ردیفعنوانحجم (مگابایت)مدت زمانقیمت
      1دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت اول : فرمان های مقدماتی man cd pwd و ls5218 دقیقه و 17 ثانیهرایگان
      2 دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت دوم: فرمان های ایجاد کردن شاخه ها و فایلها کپی کردن فایل و شاخه4018 دقیقه و 48 ثانیهرایگان
      3دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت سوم : مشاهده کردن محتوای فایل5123 دقیقه و 17 ثانیهرایگان
      4دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت چهارم: جستجو کردن فایلها و شاخه ها4118 دقیقه و 50 ثانیه5,500 تومان
      5 دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت پنجم: جستجو در فایلها با grep بخش اول4723 دقیقه و 18 ثانیه8,470 تومان
      6 دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت ششم : فرمان grep بخش دوم2112 دقیقه و 29 ثانیهرایگان
      7دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت هفتم : فرمان های کاربردی cut و jot3319 دقیقه و 6 ثانیه5,500 تومان
      8دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت هشت: مقدمه ای بر فرمان sed1810 دقیقه و 59 ثانیه5,500 تومان
      9دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت نهم : نمایش و پاک کردن خطوط با sed1510 دقیقه و 19 ثانیه5,500 تومان
      10دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت دهم: جابجا کردن کلمات و کاراکترها با sed2112 دقیقه و 17 ثانیه5,830 تومان
      11 دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت یازدهم : مقدمه ای بر دوره اسکریپت نویسی379 دقیقه و 30 ثانیهرایگان
      12فرمان Sed و کاربردهای آن00 ثانیهرایگان
      13دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت دوازدهم : مقدمه ای برای نوشتن یک اسکریپت149 دقیقه و 8 ثانیهرایگان
      14 دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت سیزدهم: خلق کردن اولین برنامه ساده در شل189 دقیقه و 26 ثانیهرایگان
      15دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت چهاردهم: متغییرها و دریافت ورودی از کاربر2815 دقیقه و 41 ثانیه5,500 تومان
      16فرمان Test:00 ثانیهرایگان
      17دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت پانزدهم: نمایش ورودی ها با echo، مستعار کردن فرمان ها و چرخش ورودی2715 دقیقه و 7 ثانیه4,400 تومان
      18اعمال ریاضی در Shell Scripting00 ثانیهرایگان
      19حلقه های تکرار در Bash00 ثانیهرایگان
      20مفهوم ورودی و خروجی در Shell00 ثانیهرایگان
      21 دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت شانزدهم: هوشمند سازی فرمان echo و متغییرها116 دقیقه و 51 ثانیه4,400 تومان
      22با خروجی های ناخواسته فرمان های چه کنیم؟00 ثانیهرایگان
      23ایجاد کردن خاتمه چند خطی در ورودی یک فرمان (here document)00 ثانیهرایگان
      24دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت هفدهم: مقدمه ای بر نوشتن یک اسکریپت بک آپ گیری3315 دقیقه و 47 ثانیه4,400 تومان
      25دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت هجدهم: نوشتن یک اسکریپت ساده backup 3217 دقیقه و 2 ثانیه5,500 تومان
      26دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت نوزدهم: مفهوم پردازش در خط فرمان5922 دقیقه و 58 ثانیه5,500 تومان
      27دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت بیستم: ایجاد کردن process bar در Shell198 دقیقه و 44 ثانیه6,600 تومان
      28دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت بیست یکم: سه فرمان history ، join و stat2011 دقیقه و 50 ثانیه4,400 تومان
      29دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت بیست دوم:: ایجاد کردن فایلهای موقت و تقسیم بندی فایلها بزرگ2212 دقیقه و 59 ثانیه5,500 تومان
      30دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت بیست سوم: استفاده کردن از functions و ارایه ها در bash139 دقیقه و 0 ثانیه5,500 تومان
      31دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت بیست چهارم: چک کردن محاسبات عددی با let2012 دقیقه و 12 ثانیه5,500 تومان
      32 دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت بیست پنجم: آشنایی با Logger2312 دقیقه و 34 ثانیه5,500 تومان
      33دوره آموزشی فوق تخصصی Shell Scripting در BASH Shell قسمت بیست ششم :: قسمت پایانی کار با dialog4324 دقیقه و 41 ثانیه11,000 تومان
      دورهمجموعه کل دوره7706 ساعت و21 دقیقه و 10 ثانیه110,000 تومان
      مطالب مرتبط

      در حال دریافت اطلاعات

      نظرات
      • سلام، ممنون از آموزش خوبتون.
        من دستور زیر رو اجرا کردم اما نتیجه ای دریافت نکردم و خروجی عین محتویات فایل بود :
        sed 's/^[0-9][0-9][0-9]/[&]/g' file.txt
        

      • فایل file.txt رو باید بسازید و قسمت اولش باید عدد های ۳ بخشی باشه
      • البته توی اموزشهای تصویری توی این بخش در مورد sed سه جلسه توضیحات پایه ای دادم

      برای ارسال نظر ابتدا به سایت وارد شوید