Sed: این ابزار کلاسیک برای پردازش متن را بیاموزید

افشای: پشتیبانی شما به حفظ سایت کمک می کند! ما برای برخی از خدماتی که در این صفحه توصیه می کنیم هزینه ارجاع دریافت می کنیم.


Sed یک برنامه کاربردی و یک زبان نویسی ساده است که برای ویرایش متن استفاده می شود. نام مخفف “ویرایشگر جریان” است ، و هدف آن ویرایش جریانهای ورودی است – معمولاً خطوط فردی در یک پرونده ، یا یک جریان واحد از stdin (ورودی استاندارد).

زبان فوق العاده قدرتمند نیست. گرچه sed کاملاً Turing است ، اما برای هر کار واقعی برنامه نویسی کارآمد نیست – برای مثال فقط دو متغیر در دسترس دارد. اما ، برای یافتن برنامه ای و ویرایش الگوهای متن در پرونده ها ، از خط فرمان یا از اسکریپت پوسته بسیار مفید است..

مهمترین دستور sed s است که دستور جانشینی است. دستور دو آرگومان به همراه پرچم گزینه دارد. به عنوان مثال ، اگر می خواستید نمونه هایی از “رنگ” انگلیسی را به “رنگ” آمریکایی اصلاح کنید و نسخه تصحیح شده را در یک پرونده جدید بنویسید ، ممکن است موارد زیر را از خط فرمان انجام دهید:

sed s / colour / colour / g new.file

توضیح سریع:

  • s / فرمان جایگزینی را شروع می کند.
  • هرچه بین اولین جفت برش وجود دارد ، الگویی برای مطابقت است. در این حالت ، این کلمه “رنگ” است ، اما می تواند یک بیان معمولی باشد – یک الگوی ، و نه یک رشته خاص از شخصیت ها.
  • بعد از الگویی که مطابقت دارد رشته جایگزینی است.
  • این به معنای “جهانی” است یا “این کار را هر بار انجام دهید ، نه اولین بار.”

هر دو الگوی مطابقت و جایگزینی می توانند متغیر باشند. اگر الگوی مطابقت یک عبارت معمولی است و می خواهید آن را اصلاح کنید (نه فقط آن را جایگزین کنید) می توانید از ampersand استفاده کنید ( & ) برای نشان دادن الگوی همسان. به عنوان مثال ، فرض کنید می خواهید تمام URL های متنی ساده را به لینک های HTML تبدیل کنید. شما ممکن است این کار را انجام دهید:

sed ‘s_http [:] // [^] * _&_ ‘

  • به این ترتیب از تعیین کننده زیرنویس به جای برش استفاده می کند ، تا خواندن همه اسلایدهای موجود در URL ها آسان تر شود..
  • الگوی مطابقت یک عبارت معمولی است که با URL های خوش فرم مطابقت دارد (اگرچه به روش محدود).
  • تعویض ایجاد یک تگ لنگر با الگوی همسان (URL) در ویژگی href و متن برچسب.

این نوع یافتن و جایگزین دلیل اصلی اختراع sed بود ، و همچنان رایج ترین کاربرد است.

منابع و آموزشهای آنلاین Sed

  • Sed – مقدمه و آموزش در Grymoire Wizard Wizard’s Wizard’s ، معرفی و مرجعی عالی برای sed ارائه می دهد.
  • Sed Tutorial مقدمه مناسبی است که برخی از کارهای پشت صحنه را که انجام می شود توضیح می دهد؛
  • کتاب آموزش Sed در Tutorials Point یک مسیر کاملاً واضح و روشمند از مهمترین مفاهیم sed است.
  • استفاده از Sed یک آموزش عالی دو بخشی از Digital Ocean است؛
  • YouTuber Kris Occhipinti دارای یک آموزش فیلم 18 قسمتی از فیلم Sed؛
  • Sed-Tutorial از LinuxHowtos یک آموزش کوچک اما مفید در مورد sed است.
  • Sed Subreddit خیلی فعال نیست ، اما بسیاری از سؤالات sed (و مرتبط) در subreddits های regex و commandline ظاهر می شوند.

کتاب در مورد سد

  • سد & Awk (1997) توسط داگورتی و رابینز ، متنی کلاسیک در دو ابزار مهم متنی خط فرمان است. اگر فقط می توانید یک چیز را در sed بخوانید ، این احتمالاً مطلبی است که می خوانید. همچنین همراه همراه دستی Aed را بررسی کنید & مرجع جیب Awk؛
  • راهنمای قطعی برای Sed: آموزش و مرجع (2013) توسط دانیل ال گلدمن ، دیدگاه بسیار معاصر تری را در مورد استفاده از sed ارائه می دهد ، با تأکید ویژه ای بر GNU sed (gsed).
  • مجموعه Ksh ، Awk و Sed Script: Mastering Programming Unix از طریق نمونه های عملی () توسط استیو مایرز ، کتاب آشپزی اسکریپت های پوسته مفید است.

Sed vs Awk و گزینه های دیگر

ابزار sed فقط یکی از گزینه های گوناگون برای جستجو و دستکاری متن از خط فرمان یا در اسکریپت های پوسته است. متداول ترین ابزار Awk است ، اما grep نیز وجود دارد. علاوه بر این ، می توانید از زبانهای اسکریپت قوی تر مانند Perl یا Python استفاده کنید.

در اینجا چند منبع برای کمک به شما در تعیین اینکه کدام ابزار برای جستجوی متنی و نیازهای ویرایش محلی شما بهترین گزینه است:

  • Grep vs Sed vs Awk: آنچه کاربر کارآمد / پیشرفته لینوکس Shell باید بداند مقاله فوق العاده ای است که سه ابزار اصلی پردازش متن را توصیف می کند ، و جزئیات زیادی در مورد زمان استفاده از کدام یک دارد.
  • چه موقع برای استفاده از Sed / Awk Over Perl یا Python یک انجمن است که با مکالمه بسیار خوبی درمورد استفاده از زبانهای برنامه نویسی کامل در برابر ابزارهای ساده تر پردازش متن ، ارسال می کند.
  • تفاوت های عملکردی و عملکرد Sed ، Awk و سایر نرم افزارهای تجزیه پارتیشن یونیکس ، مقایسه فنی مفصلی از جمله نکات مربوط به سرعت را ارائه می دهد.
  • تفاوت Sed و Awk در چیست؟ در StackExchange “خارج از مبحث” در نظر گرفته شد ، اما خوشبختانه چند کاربر پاسخ های بسیار مفیدی را ارائه دادند. اگر وقت کافی برای توضیحات دقیق تر در بالا ندارید ، این صفحه بهترین مرور کلی 30 ثانیه ای را ارائه می دهد.

کتاب ها و منابع مربوط به مباحث مرتبط

برای استفاده موثر از sed ، به مهارتهایی در دو زمینه مرتبط نیاز دارید: عبارت منظم و اسکریپت پوسته به طور کلی. در اینجا چند کتاب و آموزش آنلاین به شما کمک می کند تا توانایی های خود را کم کنید.

علاوه بر این منابع ، باید صفحات ما را در Awk و Bash نیز بررسی کنید.

کتابها

  • معرفی عبارات منظم (2012) توسط مایکل فیتزجرالد یک متن مقدمه ای بسیار مفید است که این موضوع را برای ارعاب بالقوه به راحتی درک می کند. این برنامه همچنین به طور خاص شامل اسکریپت نویسی sed و همچنین اطلاعات مربوط به استفاده از regex در Perl است
  • تسلط بر عبارات منظم (2006) توسط جفری فریدل منبع رجکس سطح بعدی شما ، پس از متن مقدماتی فوق است.
  • Classic Shell Scriptting (2005) توسط رابینز و بیبی کتابی است که مهمترین خط فرمان و ابزار اسکریپت از جمله یونیکس را پوشش می دهد. آرنولد رابینز ، یکی از نویسندگان ، همچنین نویسنده نویسنده کلاسیک ساد است & کتاب Awk ذکر شده در بالا.

منابع آنلاین

منابع آنلاین زیادی در این موضوعات وجود دارد. در اینجا فقط چند مورد مفید وجود دارد:

  • RegExr ابزاری آنلاین برای یادگیری ، ساخت و آزمایش عبارات منظم است.
  • RegEx101 یکی دیگر از تسترهای بیان منظم آنلاین است که دارای ورق تقلب داخلی و بازخورد تجزیه و تحلیل مفید است.
  • برگه تقلب Regex یک مرجع جامع ارائه می دهد ، زیرا وقتی می خواهید بدانید که رشته های به ظاهر تصادفی از شخصیت هایی که باید تایپ کنید برای پیدا کردن رشته های به ظاهر تصادفی از شخصیت های مورد نظر خود استفاده می کنید.
  • Grymoire ، که در بالا به آن اشاره شد ، یک شیء اطلاعات برای اسکریپت نویسی یونیکس است.
  • آموزش Shell Scriptting Linux یکی از بهترین آموزش های آنلاین برای یادگیری Bash است.

خلاصه

زمانی بود که تقریباً کلیه کاربران جدی رایانه ، ابزارهای خط فرمان مانند sed را خیلی خوب می دانستند. برای خوب یا بد بودن آن زمان گذشته است. امروز ، حتی بسیاری از توسعه دهندگان پیشرفته نمی دانند چگونه از این ابزارهای اساسی استفاده کنند.

با این حال ، اگر شما علاقه مند هستید که به عنوان یک کاربر قدرت – به ویژه در محیط لینوکس ، یونیکس یا مک – واقعاً بهره وری خود را به حداکثر برسانید ، داشتن یک دسته خوب در خط فرمان ضروری است. این امر به ویژه در صورت انجام هرگونه توسعه وب یا مدیریت بسیار مفید است ، زیرا بیشتر وب بر روی سرورهای لینوکس اجرا می شود ، و بیشتر مدیریت از راه دور سرورها در خط فرمان انجام می شود.

Sed که تقریباً در هر سیستم عامل لینوکس و یونیکس وجود دارد ، می تواند به شما کمک کند آنچه را که می خواهید پیدا کنید. وقتی ابزار جستجوی کاربرپسند رایانه رومیزی را ندارید ، این امر می تواند ضروری باشد. یادگیری کار سختی نیست و هرگز متاسف نخواهید شد که می دانید چگونه از این ابزار کلاسیک استفاده کنید.

مطالعه بیشتر و منابع

ما راهنماها ، آموزش ها و اینفوگرافیک های بیشتری در رابطه با رایانه ها داریم:

  • مقدمه و منابع برنامه نویسی لینوکس: این شیرجه رفتن عمیق به برنامه نویسی لینوکس تبدیل می شود به هسته که در آن تمام اقدامات است.
  • منابع برنامه نویسی Bash: با مهمترین پوسته خط فرمان یونیکس شروع کنید.
  • منابع Awk: درباره ابزار خواهر sed Awk اطلاعاتی کسب کنید.

لیست نهایی ابزارهای وب مستر A-Z

Sed و Awk و Bash فقط بخشی از مجموعه بزرگی از ابزارهایی هستند که به مدیران سیستم اجازه می دهند سیستم عامل ها را مدیریت کنند. لیست نهایی ابزارهای وب مستر A-Z در انجام کار خود کمکهای زیادی به شما می کند.

لیست نهایی ابزارهای وب مستر A-Z
لیست نهایی ابزارهای وب مستر A-Z

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map