فهرست مطالب
چکیده
در این فصل صحبت خواهیم نمود که:
gawkچیست؟
کاربرد دستورات gawk در خط فرمان
چگونه متن را با gawkقالببندی کنیم
چطور gawk عبارتهای منظم را به کار میبرد
Gawk در اسکریپتها
Gawk و متغیرها
Gawk یک نگارش گنو از برنامه awk یونیکس است، که عموماً در دسترس میباشد، یک ویرایشگر محبوب جریانی دیگر. نظر به اینکه برنامه awk اغلب فقط یک لینک به gawk میباشد، ما به عنوان awk، به آن رجوع خواهیم نمود.
تابع اصلی awk جهت جستجوی فایلها برای سطرها یا دیگر واحدهای متن شامل یک یا چند الگو میباشد. وقتی یک انطباق با یکی ازالگوها در یک سطر رخ میدهد، عملیات خاص روی آن سطر انجام میشود .
برنامهها در awk از برنامهها در اکثر زبانهای برنامهنویسی متفاوت میباشند، زیرا درawk برنامهها “data-driven” میباشند: شما دادههایی را که میخواهید با آنها کار کنید شرح داده و سپس آنچه بعد از یافتن آنها انجام میشود. اکثر زبانهای برنامهنویسی “روالگرا” هستند. شما باید هر مرحلهای که برنامه دارد را به تفصیل زیاد، تشریح نمایید. وقتی با یک برنامه روالگرا کار میکنید، معمولاً توضیح شفاف دادههایی که برنامه شما پردازش خواهد نمود، دشوارتر است. به این دلیل، برنامههای awkاغلب به سهولت برای خواندن و نوشتن دوبارهسازی میشوند.
واقعاً به چه معنا میباشد؟ | |
---|---|
برگشت به دهه 1970، سه برنامهنویس برای ایجاد این زبان گرد هم آمدند. نامهای آنها Kernighan ،Aho و Weinberger بود. آنها حرف اول نام هر یک را گرفته و در کنار هم قرار دادند. بنابراین زبان برای بهترین حالت میتوانست “wak”نام گرفته باشد. |
موقعی که شما awk را اجرا میکنید، یک برنامهawk تعیین میکنید که به awk میگوید چهکاری انجام دهد. برنامه متشکل از یک سری قواعد میباشد. (همچنین ممکن است شامل تعریفهای توابع، حلقهها، شرطها، و دیگر ساختارهای برنامهنویسی باشد، ویژگیهای پیشرفتهای که در حال حاضر از آنها صرفنظر میکنیم.) هر قاعده یک الگو را برای جستجو و یک عمل را برای انجام روی الگوی یافت شده، تعیین میکند.
چند روش برای اجرای awk وجود دارد. اگر برنامه کوتاه باشد، سادهترین راه اجرای آن در خط فرمان است:
awk PROGRAM
inputfile(s)
اگر تغییرات چندگانهای، احتمالاً به طور منظم بر روی چندین فایل، باید انجام شود، قرار دادن فرمانهای awk در یک اسکریپت، آسانتر میباشد. این اسکریپت به این طریق خوانده میشود:
awk
-f
PROGRAM-FILE
inputfile(s)