batch scripting
batch فایل ها فایل هایی هستند که پسوند .batch دارند و شامل یک سری دستورات پشت سر هم هستند که به ترتیب اجرا میشوند و یک خروجی را نمایش میدهند
برای ایجاد بک فایل بچ اقدامات زیر را انجام میدهیم
C:\>notepad displaymessage.bat
وقتی اینتر را بزنیم یک بچ فایل داریم اکنون داخل فایل نوت پد باز کرده دستورات زیر را می نویسیم
Echo welcome to batchscripting training couse
Echo golbargshabakeh.ir
Echo by: Amin Kotalan
Pause
اکنون فایل را ذخیره میکنیم
حال برای اجرای فایل کافیست در cmd تایپ کنیم
>displaymessage
فایل اجرا میشود
اگر اینتر را بزنیم ار بچ فایل خارج میشویم و به محیط cmd وارد میشویم
اگر دقت کنیم ابتدا خط اول را به ما نشان میدهد سپس خروجی را نمایش میدهد برای اینکه این عمل اتفاق نیفتد باید یک تغییر در فایل نوت پد انجام دهیم
>notepad displaymessage.bat
سپس در فایل نوت پد در خط اول می نویسیم
@echo off
وقتی این دستور را مینویسیم یعنی دستورات را برای من نمایش نده فقط خروجی را نمایش بده سپس فایل را ذخیره میکنیم
و دوباره عبارت displaymessage.bat را تایپ میکنیم زمانی که اینتر را میزنیم خروجی را برای ما نمایش میدهد
یکسری قابلیت های پیشرفته در بچ فایل ها هست که ما میخواهیم در ادامه با آنها آشنا شویم
بچ فایلها قابل اجرا هستند اما شما میتوانید مثل command های در دسترس به این بچ فایل یک سری پارامتر ارسال کنید
اکنون ما میخواهیم نام و نام خانوادگی را به بچ فایل ارسال کنیم و به آن دسترسی داشته باشیم
برای اینکار نوت پد را باز میکنیم و دستور زیر را مینویسیم
@echo off
Echo %1 %2
Echo welcome to batch scripting training course
Echo golbargshabakeh.ir
Echo By: Amin Kotalan
Pause
زمانی که این دستور را اجرا میکنیم جای %1 پارامتر چاپ میشود و به جای %2 پارامتر دوم ارسال میشود،فایل را ذخیره میکنیم و مجدد فایل را ارسال میکنیم
>displaymessage Amin Kotalan
مثال دیگر :
>notepad myping.bat
درون نوت چد دستور زیر را مینویسیم
@echo off
Ping %1
سپس فایل را ذخیره میکنیم
اکنون اگر بنویسیم
>myping golbargshabakeh.ir
سایت گلبرگ شبکه را ping میکند.
>notepad serverping.bat
درون نوت پد می آییم و دستور زیر را مینویسیم فرض میکنیم سرور ما golbargshabakeh.ir است
Ping golbargshabakeh.ir /t
ذخیره میکنیم سپس ارد درایو c میشویم و فایل server ping را در صفحه دسکتاپ کپی میکنیم
درون بچ فایل ها اگر خواستیم کامنت بنویسیم به این صورت ابتدای فایل مینویسیم لازم به ذکر است این کامنت ها هیچ مشکلی برای فایل ما ایجاد نمیکند.
>notepad serverping.bat
اینتر میزنیم
Rem this batch file will ping the server with /t switch
ذخیره میکنیم
اکنون اگر فایل serverping.bat را بنویسیم و اجرا کنیم این دستور اجرا میشود
دستور if :
دستوری است که ما میتوانیم بر اساس یک سری مقادیر و یک سری شرط ها روند اجرای اسکریپت خودمون رو مدیریت کنیم
برای نمونه دستور زیر را تایپ میکنیم
>set %-website=golbargshabakeh.ir
>if %-website% == gplbargshabakeh.ir echo welcome to your website
اینتر میزنیم
اکنون اگر بخواهیم بگوییم اگر وب سایت ما برابر گلبرگ شبکه نبود پیغام را نمایش بده برای اینکار اول شرط خودمان یک NOT اضافه میکنیم
>if not %-website% == golbargshabakeh.ir echo welcome your website
سپس اینتر میکنیم.
در محیط کامند پرومپت عبارت زیر را وارد میکنیم
>notepad test.bat
سپس در فایل نوت پد باز شده دستورات زیر را وارد میکنیم
@echo off
If %1 == Amin echo your family is Kotalan
اکنون عبارت زیر را وارد میکنیم تا دستور را تست کنیم
>test.bat Amin
گروه بندی دستورات :
برای گروه بندی دستورات از کد زیر استفاده میکنیم
>notepad test.bat
در فایل نوت پد باز شده دستورات زیر را مینویسیم
@echo off
If %1 == Amin (
Echo welcome %1
Echo this is batch scripting course from golbargshabakeh.ir
)
اکنون فایل را ذخیره میکنیم.
و برای تست دستور زیر را در کامند پرومپت وارد میکنیم
>test Amin
در حالت بعدی میخواهیم بگوییم اگر شرط برقرار نبود حالت بعدی را اجرا کن
>notepad test.bat
سپس در فایل نوت پد باز شده دستورات زیر را مینویسیم
@echo off
If %1 == Amin (echo welcome Amin ) else ( echo your name is not valid )
سپس برای تست کردن عبارت زیر را وارد میکنیم
>test amin
عبارت زیر را مینوسیم
>notepad runner.bat
و در فایل نوت پد دستور زیر را وارد میکنیم
@echo off
If %1 == serverping (
Ping golbargshabakeh.ir
)
If %1 == renew (
Ipconfig /flashdns
Ipconfig /release
Ipconfig /renew
)
سپس برای تست دستورات زیر را وارد میکنیم
>runner serverping
>runner renew
لیبل ها :
دستورات زیر را در محیط cmd وارد میکنیم
>set str=welcome
>if defined str echo str defined!
به وسیله دستور defined میتوانیم که یک متغیر تعریف شده یا نه
در محیط کامند دستور زیر را تایپ میکنیم
>notepad menu.bat
سپس در فایل نوت پد باز شده دستورات زیر را مینویسیم و ذخیره میکنیم
@echo off
:start
Cls
Title my utilities
Echo welcome to my utilities
Echo———————————
Echo 1.server ping
Echo 2. Renew ip
Echo 3. Chrome
Echo 4. Notepad
Echo 5. Microsoft paint
Echo 6. Exit
Choice /c 123456 /m “please select an option:”
If %errorslevel% == 6 (goto : eof)
Goto :start
If %error level%== 2 (
Ipconfig /flashdns
Ipconfig /release
Ipconfig /renew
Pause
Goto :start
)
If %error level%== 1 (
Ping golbargshabakeh.ir
Pause
Goto :start
)
If %error level% == 3 (
Start chrome
Goto :start
)
If %error level% == 4 (
Start notepad
Goto :start
)
If %error level% == 5 (
Start mspaint
Goto :start
)
چک کردن وود یا عدم وجود یک فایل :
برای چک کردن وجود یا عدم وجود یک فایل عبارت زیر را در محیط کامند وارد میکنیم
>notepad runner.bat
سپس در فایل نوت پد دستورات زیر را مینویسیم
@echo off
If exist “c:\test.bat”(
Echo file exists
) else (
Echo file not exists
)
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.