از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
Bash چگونه یک فرمان را در یک متغیر اجرا کنیم؟
سرفصلهای مطلب
اسکریپت های Bash را می توان به روش های مختلف ایجاد کرد و اکثر ما با اجرای دستورات ساده در یک اسکریپت Bash آشنا هستیم. با این حال، این دستورات را می توان در متغیرهای Bash نیز کپسوله کرد. این process به عنوان جایگزینی دستور شناخته می شود و به طور کلی برای ذخیره خروجی یک دستور در یک متغیر استفاده می شود تا مجبور نباشید آن دستور را بارها و بارها به صراحت اجرا کنید، بلکه می توانید به سادگی به آن متغیر دسترسی داشته باشید تا خروجی آن دستور را هر زمان که می خواهید دریافت کنید. خواستن در این مقاله به شما نشان خواهیم داد که چگونه می توان این کار را انجام داد.
توجه: تمام سناریوهای نشان داده شده در زیر انجام شده است روی اوبونتو 20.04. با این حال، آنها دقیقاً به همان شیوه با هر طعم دیگری از لینوکس نیز کار خواهند کرد.
روش اجرای یک فرمان در متغیر در Bash:
برای نشان دادن روش اجرای یک دستور در یک متغیر در Bash، سه سناریو مختلف را به شما ارائه می دهیم که به شرح زیر است:
اجرای “echo” دستور ذخیره شده در یک متغیر:
این ساده ترین سناریویی است که در آن هدف ما اجرای آن است echo دستوری که در یک متغیر ذخیره می شود. برای تحقق آن، باید مجموعه ای از مراحل ذکر شده در زیر را دنبال کنید:
مرحله 1: ایجاد یک اسکریپت Bash:
شما باید یک Bash Script در پوشه Home خود ایجاد کنید که باید روی آن کلیک کنید روی نماد File Manager همانطور که در تصویر زیر مشاهده می کنید:
اکنون هر فضایی را در پوشه Home خود پیدا کنید و راست کلیک کنید روی آن را برای راه اندازی یک منو. از این منو گزینه New Document و سپس از منوی زیر آبشاری گزینه Empty Document را انتخاب کنید. با انجام این کار یک سند جدید در پوشه Home شما ایجاد می شود. اکنون این سند جدید ایجاد شده را با هر نامی که انتخاب می کنید و پس از آن پسوند .sh تغییر نام دهید. در مورد ما، آن را CommandVar.sh نامگذاری کرده ایم.
برای نوشتن یک اسکریپت Bash در این فایل، دوبار کلیک کنید روی آن را باز کنید و سپس اسکریپت نشان داده شده در تصویر زیر را در فایل Bash خود تایپ کنید. در اینجا، اولین خط اسکریپت یعنی “#!/bin/bash” نشان می دهد که این فایل در واقع یک فایل Bash است. سپس یک متغیر به نام “test” ایجاد کرده و مقدار “$( را به آن اختصاص داده ایم.echo “سلام!”)”. هر زمان که می خواهید دستور را در یک متغیر ذخیره کنید، باید آن دستور را قبل از علامت “$” تایپ کنید. در این مورد، ما می خواستیم “echoدستور ” در متغیر “test” بنابراین ما به سادگی “echoدستور به دنبال آن یک پیام تصادفی و آن را در پرانتزهای گرد قرار داده و علامت “$” را قبل از آن قرار دهید. خب حالا اگر بخواهیم این را اجرا کنیمechoدستور “، ما باید به متغیر “test” دسترسی پیدا کنیم. بنابراین، برای بررسی اینکه آیا “echoدستور ذخیره شده در متغیر “test” می تواند با موفقیت اجرا شود یا خیر، ما خروجی متغیر “test” را چاپ کرده ایم. روی را terminal با استفاده از دیگریecho” فرمان پس از تایپ این اسکریپت، باید فایل خود را ذخیره کرده و ببندید.
مرحله 2: اجرای اسکریپت Bash از طریق ترمینال:
حال باید این اسکریپت را از طریق the اجرا کنید terminal. بنابراین، باز کنید terminal در اوبونتو 20.04 و سپس دستور زیر را در آن تایپ کنید:
هنگامی که برای اجرای این دستور کلید Enter را فشار دهید، می توانید خروجی زیر را مشاهده کنید روی شما terminal. در اینجا، بخش برجسته شده از خروجی، خروجی “echoدستوری که در متغیر “test” ذخیره شده بود.
اجرای دستور seq ذخیره شده در یک متغیر:
در این سناریو، ما print دنباله ای از اعداد با استفاده از دستور “seq” ذخیره شده در یک متغیر. برای ایجاد آن، اسکریپت Bash ایجاد شده در بالا را با انجام مراحل زیر اصلاح می کنیم:
مرحله شماره 1: اصلاح اسکریپت Bash ایجاد شده در بالا:
فایل Bash را که به روش بالا ایجاد کرده اید باز کنید و اسکریپت زیر را در آن تایپ کنید. در اینجا، ما یک متغیر به نام “sequence” ایجاد کرده ایم. هدف ما این است که print اعداد از 1 تا 10 هنگام استفاده از دستور “seq”. برای انجام این کار، مقدار “$(seq 1 10)” را به متغیر “sequence” نسبت داده ایم. همچنین در صورت تمایل می توانید محدوده دیگری از اعداد را به دلخواه خود تعیین کنید. عدد اول بعد از دستور seq نشان دهنده کران پایین دنباله است در حالی که عدد دوم به کران بالایی اشاره دارد. پس از تایپ این اسکریپت، فایل خود را ذخیره کرده و ببندید.
مرحله 2: اجرای اسکریپت Bash اصلاح شده از طریق ترمینال:
اکنون اسکریپت Bash خود را به همان روشی که در بالا توضیح داده شد اجرا کنید و می توانید دنباله مشخص شده را مشاهده کنید. روی شما terminal همانطور که در تصویر زیر نشان داده شده است:
اجرای دستور ‘pwd’ ذخیره شده در یک متغیر:
شما همچنین می توانید print دایرکتوری کاری شما با استفاده از دستور “pwd” ذخیره شده در یک متغیر. برای نشان دادن این موضوع، اسکریپت Bash ایجاد شده در بالا را دوباره با انجام مراحل ذکر شده در زیر اصلاح می کنیم:
مرحله شماره 1: اصلاح اسکریپت Bash ایجاد شده در بالا:
فایل Bash را که به تازگی اصلاح کرده اید باز کنید و سپس اسکریپت نشان داده شده در تصویر زیر را در آن تایپ کنید. در این اسکریپت متغیری به نام “working_directory” ایجاد کرده و مقدار “$(pwd)” را به آن اختصاص داده ایم. دستور “pwd” به سادگی خروجی خود را ذخیره می کند، یعنی دایرکتوری فعلی را در متغیر “working_directory” ذخیره می کند. برای اطمینان از اینکه دستور “pwd” به درستی اجرا شده است یا خیر، مقدار متغیر “working_directory” را چاپ کرده ایم. روی را terminal با استفاده از “echo” فرمان حال این فایل را ذخیره کرده و پس از تایپ اسکریپت Bash اصلاح شده در آن، آن را ببندید.
مرحله 2: اجرای اسکریپت Bash اصلاح شده از طریق ترمینال:
اکنون این اسکریپت Bash را به همان روشی که در بالا توضیح داده شد اجرا کنید. خروجی این اسکریپت Bash دایرکتوری کاری فعلی را به شما نشان می دهد. بخش برجسته شده از خروجی در واقع خروجی دستور “pwd” است.
نتیجه:
این مقاله ایده بسیار خوبی در مورد اینکه چگونه می توانید دستوری را که در یک متغیر در Bash ذخیره شده است را اجرا کنید و می توانید همان خروجی را دریافت کنید که اگر فرمان را به طور مستقل اجرا می کردید، دریافت می کردید.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-31 09:47:03