آموزش Batch Programing
آموزش Batch Programing
فصل اول مبانی پایه در Batch Programing
تا به حال به این فکر افتاده اید که چگونه میتوان کارهای کامپیوتری را به صورت یکجا و خودکار انجام داد؟ یا اینکه زمان انجام یک کار رو به صورت دستی مشخص کرد؟ مثلا در تاریخ مشخص کلیه عکسهای شما حذف شود. یا همیشه در پایان روز هارد دیسک به صورت خود کار Defrag شود. و یا با دوبار کلیک کردن روی یک فایل چند کار مثل فرمت کردن درایوها، ساخت و حذف پوشه ها، ایجاد فایلهای متنی به همراه متن خاص و … انجام شود؟ اگر شما هم علاقه به Automation نمودن کارها دارید باید بدانید آموزش Batch Programing مخصوص شما میباشد.
ساخت فایلهای Batch به شما اجازه میدهد کارهای خود را به صورت یکجا در یک فایل متنی مشخص کنید. تا در زمان انجام کارهای روزانه صرفه جویی کنید. یعنی ساخت برنامه ای که کارهای شما را به صورت خودکار انجام دهد.
نکته: برای ساخت حرفه ای تر فایلهای Batch نیاز به یاد گرفتن دستورات CMD دارید. یعنی هر چه بیشتر از دستورات CMD بدانید فایل Batch حرفه ای تر میتوانید بسازید. اگر تازه کار هستید پیشنهاد میدهم به آموزش CMD سر بزنید.
فایل Batch چیست؟
فایلهای Batch در واقع دارای فهرستی از دستورات CMD در ویندوز میباشند که به صورت غیر تعاملی اجرا میشوند. یعنی یک سری دستور که با قواعد Batch Programing نوشته شده اند و به صورت خودکار و بدون نیاز به دخالت افراد اجرا میشوند. برای مثال زمانی که میخواهید چند کار را پشت سر هم انجام دهید نیاز دارید تا ابتدا به کار اول رسیدگی کنید سپس به کار دوم و سوم و … اما اگر یک فایل Batch بسازید همه کارهای خود را میتوانید در یک حرکت انجام دهید.
چگونه یک فایل Batch بسازیم؟
برای ساخت فایل Batch ابتدا در مکان مورد نظر خود همانند Desktop کلیک راست کرده سپس از گزینه New روی Text Documents کلیک کنید. تا یک فایل متنی ایجاد شود. حال پسوند فایل متنی که txt. میباشد را به Bat. یا cmd. تغییر دهید. معمولا پس از تغییر هشداری مبنی بر: (در صورت تغییر پسوند ممکن است فایل شما غیر قابل استفاده شود) را مشاهده کنید که باید روی گزینه Yes کلیک کنید. پس از تغییر پسوند آیکون فایل متنی به چرخ دنده تغییر خواهد نمود:
نکته: در صورت مشاهده نکردن پسوند فایلها ابتدا باید از تب View در Folder Option تیک گزینه Hide Extension for known File Types را بردارید. تا کلیه پسوندها نمایش داده شود.
پس از تغییر نام فایل روی آن کلیک راست نموده سپس روی گزینه Edit کلیک کنید تا ویرایشگر Notepad باز شود. اولین دستور برای ساخت فایل Batch دستور Echo off@ میباشد. که مشخص میکند این یک فایل غیر تعاملی یا Non-Interactive است. پس در اولین سطر Echo off@ را تایپ کنید.
@Echo off
حال برای نمایش یک متن خاص باید از دستور Echo به همراه متن مورد نظر استفاده کنید. اما در سطر دوم یا سطر سوم که خالی باشد:
@Echo off Echo This File is My First Batch Programing File.
برای نمایش یک سطر خالی در نتایج فایل Batch دستور Echo را به همراه یک نقطه تایپ کنید. برای مثال:
@Echo off Echo. Echo This File is My First Batch Programing File.
نکته: بهتر است بعد از ایجاد هر تغییر فایل Batch را Save کرده و حاصل آن را با دو بار کلیک رو فایل مشاهده کنید. اگر فقط از دستور Echo استفاده کرده باشید فایل به سرعت نمایش داده شده و بسته میشود. برای ایجاد توقف باید از دستور Pause در آخر متن استفاده کنید برای مثال:
@Echo Off Echo. Echo This File is My First Batch Programing File. Pause
پس دستور Echo off@ برای مشخص نمودن Non-Interactive بودن فایل بود. دستور .Echo هم برای نمایش سطر خالی استفاده میشود. و دستور Echo به همراه پیام مورد نظر برای نمایش پیام مورد نظر شما است. دستور Pause هم برای توقف استفاده میشود.
آزمایشگاه: با آنچه که تا به حال یاد گرفته اید یک فایل Batch بسازید و فهرستی از مطالب خود را به صورت Non-Interactive به نمایش در بیاورید.
مشخص نمودن عنوان در Batch File
برای مشخص کردن یک عنوان باید از دستور Title در فایل Batch استفاده کنید. کافیست تا دستور Title را به همراه عنوان مورد نظر خود بعد از دستور Echo off@ تایپ کنید:
@Echo off Title TML-MANAGER.IR
مشخص نمودن رنگ در Batch File
برای مشخص نمودن رنگ متن و رنگ صفحه باید از دستور Color استفاده کنید. مثلا برای داشتن متن سبز در صفحه مشکی:
Color 0a
در دستور بالا ابتدا عدد 0 رنگ صفحه را مشخص میکند و حرف a رنگ متن را، برای دیدن فهرست رنگها کافیست از دستور ?/ Color در محیط CMD استفاده کنید.
مشخص نمودن ابعاد صفحه در Batch File
برای مشخص نمودن تعداد لاین ها و حرف ها در ابعاد صفحه اجرایی فایل Batch باید از دستور Mode به همراه پارامتر Con و پارامتر Lines و پارامتر Cols استفاده کنید برای مثال:
Mode Con Cols=80 Lines=40
بگذارید آنچه که تا اینجا توضیح دادم را در یک مثال برایتان نمایش دهم:
@Echo off Title TML-MANAGER.IR Color 0a Mode con Lines=40 Cols=80 Echo. Echo _________________________ Echo. Echo How are you? Echo. Echo _________________________ Echo. Echo Can I Help You? Echo. Echo _________________________ Echo. Pause
برای فصل اول همین دستورات کافی میباشد. در فصل های بعد به دستورات پیچیده تر اشاره خواهم نمود. پس همواره سایت تی ام ال منیجر را دنبال کنید. با تشکر از نگاه گرمتان.
برای دریافت نسخه PDF مقاله آموزش ساخت فایل Batch کلیک کنید.
آموزش مبتدی تا حرفه ای ساخت فایل Batch
فصل اول: مبانی پایه Batch Programming
فصل دوم: کدهای برگشتی یا فایل Batch یا Return Code
فصل سوم: ورودی ها و خروجی های STDIN , STDOUT , STDERR
فصل چهارم: معرفی و ساخت Variable ها با دستور SET
فصل پنجم: اجرای شرطی برنامه ها با دستور IF
فصل ششم: ساخت منو در فایل Batch (با استفاده از دستور IF و SET)
فصل هفتم: دستور FOR برای ساخت حلقه
فصل هشتم: نکات تکمیلی در ساخت فایل Batch (بررسی کلی)
با سلام
دوست عزیز من از طریق گوگل پلاس با شما و سایت زیبای تون آشنا شدم و بهره بردم از سایتی که ایجاد کردین به امید موفقیت روز افزون شما و اینکه به طور جدی تر آموزش های کاربردی تر بزارین هرچند که تا الان هم خیلیی خیلیی عالی کار کردین……با آرزوی موفقیت روز افزونتان …
سلام مصطفی جان
خیلی خیلی ممنونم که برای سایت اهمیت قائل شدید.
چشم، امید وارم شما هم در زندگیتون موفق و پیروز و سربلند باشید.
سلام خسته نباشید
آموزش ها عالی هستند
فصل دوم این بخش تو سایته؟
پیدا نکردم!
سلام عرفان جان
ممنونم
هنوز فصل دوم رو شروع نکردم.
عالی بود
ممنونم 🙂 از لطف تون
سلام
منتظر فصلهای بعدی هستیم
خیلی روان توضیح دادید ممنونم
سلام محسن جان، چشم
تا حالا پنج تا از فصل هاشو نوشتم
میتونید از منوی دروه های آموزشی گزینه آموزش کامل Batch Programming رو انتخاب کنید.
ممنون از لطف تون
سلام برنامه نویس عزیز لطفا کمک کنید
من میخوام یک فایل Batch ایجاد کنم که بتونه تمام فایلهای درون یک پوشه به فایل های پوچ تبدیل کنه مثلا درون یک پوشه 100 تا دفترچه با فرمت txt هست و هر کدامشون حجم خودشون را دارند میشه کدی ایجاد کرد که بهش حجم این 100 تا دفترچه بشه صفر؟
سلام تازه آشنا شدم با ساییتون واقعا عالیییههه آموزش
سلام دانیال جان
ممنون از محبت تون 🙂
باعث خوشحالی که چنین نظر مثبتی رو از شما دریافت میکنم.
موفق و سربلند باشید.
سلام, تشکر از پست مفیدتون
اگر بخوایم فایلی رو اجرا کنیم باید از چه دستوری استفاده کنیم؟؟
سلام
ممنون از محبت تون، میتونید از دستور call یا start برای فراخوانی یک برنامه استفاده کنید.
موفق باشید
سلام و عرض خسته نباشید و تشکر
من یه برنامه نوشتم (البته نمیشه بهش گفت برنامه, ی چیز های مختصر) ولی العان یک مشکلی دارم بزرگ دارم
من میخوام ب صورت حلقه ایی و بالفرض مثال با استفاده از دستور Else کاربر هر حروف یا عددی رو ک وارد کرد یه قسمت از برنامه اجرا بشه
و نه فقط یکبار, ب طور مثال العان 1 رو وارد میکنه دستورات مرتبط باهش با عدد 1 خونده میشن و بعد اگر خواست 2 رو میزنه و . . .
و در نهایت هر جای برنامه Exite زد پنجره بسته بشه (یعنی پنجره مادام باز باشه تا زمـــــــآنی ک Exite رو بزنه
اگر میشه ی مقدار دستور رو بیشتر توضیح بدید, ممنون