آموزش shell code نویسی در لینوکس – Linux قسمت دوم

به نام دانای بر حق

در قسمت قبلی در مورد مقدمات و شل کد نویسی صحبت کردیم و از بحث های بسیار ابتدایی شروع کردیم و این خودش برای شروع خوب بودش حالا در این قسمت قصد داریم ببینیم به چه صورت میتونیم بدون ورود مستقیم کدها در ترمینال اون ها رو در ترمینال اجرا کننیم و به bash بفرستیم خب این میشه شروع ماجرای دوم که جای تعمق داره.

تحریک bash با فایل و اجرا دستور در آن

اول باید بگیم فایل هایی با پسوند sh میتونه این کار رو انجام بده و حالا این فایل sh رو چطور بنویسیم باز هم از رفتن به سمت خرابکاری امتناع می کنیم تا و یه سری دستور ساده در نظر میگیریم خب دستور  اولی که در نظر می گیریم برنامه xampp اگر به صورت اجرای خودکار یا سرویس نباشد در لینوکس بعد از روشن شدن سیستم میبایستی xampp رو استارت کنید و حتی میتونید با دستور ریستارت از اول اجراش کنید برای این کار باید دستور زیر رو در ترمینال وارد کنید:

sudo /opt/lampp/lampp restart

خب حالا ما برای بسته بندی و اجرا این کد در bash راه خیلی سختی در پیش نداریم با ۳ تا حرکت ردیفش می کنیم هول نکنین 😀

خب حرکت اول یه text editor رو باز کنین و به نام xampp-restart.sh مثلا در دستکتاپ خودتون وارد کنید

حرکت دوم این کد رو توش paste کنید و دوباره ذخیره کنید:

#!/bin/bash
# init
function pause(){
   read -p "$*"
} 
# ...
# call it

sudo /opt/lampp/lampp restart
#show resultz
echo 'xampp restarted...'
pause 'Press [Enter] key to continue...'
# exit 
# ...

بعد حرکت سوم یعنی آخر یه double click  کردن روی فایل xampp-restart.sh هستش تصویر زیر رو میبنید :

 

exc

شما گزینه اجرا در تریمنال رو انتخاب کنید به خاطر استفاده از sudo از شما پسورد ورودتون میخوادش و در صورت ورود درستش به نتیجه زیر میرسید و تریمنال منتظرزدن Enter برای خروج میشود:

term-xammpخب حالا تحلیل کد:

#!/bin/bash
# init
function pause(){
   read -p "$*"
} 
sudo /opt/lampp/lampp restart
# ...
# call it
echo 'xampp restarted...'
pause 'Press [Enter] key to continue...'
# rest of the script
# ...

خط اول یه دستور ثابت هستش مشخص کننده اجرای این کد در bash می باشد که مشخص هستش بعد تابع pause رو برای نوشتن یه متن و منتظر ماندن نوشتیم که هر بار تکرار نوشد و سپس دستور مورد نظر خودمون رو نوشتیم و بعد از اون نوشتیم xampp restart شد و بعد تابع pause رو نوشته روبروش اجرا کردیم تا به کاربر بفهمونیم که قضیه چی هستش و بعد از یک Enter برنامه خارج شود.

ضمن این که باید گفت به جز خط اول که به # شروع میشه همه خط ها توضیخ یا comment  هستش و قابل پاک کردن هستند.

و این پایان نشست دوم شل کد نویسی در لینوکس، تا سری های بعدی بریم فضا مضا 😀 نه ببخشید باید بریزم زیر زمین زیر زمینی بشیم.

 

💬

شاید امروز جواب خیلی از سؤال‌ها را بتوان از AI گرفت، اما تولید مطالب تخصصی، تجربه‌محور و عمیق هنوز به انگیزه نیاز دارد. این نظرات و بازخوردهای شماست که به ما نشان می‌دهد ادامه دادن این مسیر ارزشمند است.

دیدگاه شما چیست؟

نظرات (2)

محمد جواد فصاحت
۲۵ آبان ۱۳۹۳

مهندس خیلی عالی بود
ممنون

Guest
۲۳ اسفند ۱۳۹۳

shell script*


ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

عضویت در شبکه‌های اجتماعی

جدیدترین مقالات و نکات برنامه‌نویسی را سریع تر از دیگران مطلع شوید.