ساختن فایل گزارش از Batch File‌ها

نوشته شده توسط:ترفندستان (نامشخص) | ۰ دیدگاه
اگر از علاقه‌مندان به اسکریپت‌نویسی فایل‌های Batch باشید حتماً برای‌تان بسیار جالب خواهد بود که برنامه‌های‌تان فایل گزارشی (Log File) در رابطه با عملیات انجام شده و با تاریخ جاری ایجاد کنند. در این ترفند به آموزش چنین کاری می‌پردازیم پس با ما همراه باشید.

 

 

برای این کار لازم است که ابتدا فایل Batch مورد نظر خود را با نرم‌افزارهایی نظیر Notepad باز کنید.
سپس کد زیر را در ابتدای Batch File خود قرار دهید:
Set MM=%date:~4,2%
Set DD=%date:~7,2%
Set YYYY=%date:~-4%

این کار به منظور تعریف 3 متغیر MM، DD و YYYY به عنوان تاریخ جاری خواهد بود.
اگر فرضاً نام فایل گزارش دلخواه شما را TarfandestanLog-[Date].txt در نظر بگیریم، پس از خطوط بالا کد زیر را می‌نویسم تا فایل گزارش ساخته شود:
echo Tarfandestan Program Log File (%YYYY%-%MM%-%DD%) > TarfandestanLog-[%YYYY%-%MM%-%DD%].txt
echo. >> TarfandestanLog-[%YYYY%-%MM%-%DD%].txt
حالا در هر قسمت از اسکریپت خود که قصد اضافه کردن اطلاعاتی به فایل گزارش دارید، از الگوی زیر استفاده نمایید:
echo Message >> TarfandestanLog-[%YYYY%-%MM%-%DD%].txt
واضح است که به جای Message ، پیغام مدنظر خود را باید جایگزین کنید.

به عنوان مثال شما اسکریپت ساده‌ای برای پاک کردن فایلی با عنوان Tarfandestan.exe که در ریشه‌ی درایو C قرار دارد، به این صورت نوشته‌اید:
@echo off
REM WWW.TARFANDESTAN.COM
attrib -s -h -r C:\Tarfandestan.exe
del /f /q C:\Tarfandestan.exe
pause
exit
برای این که این اسکریپت پاک شدن فایل مدنظر را بررسی کند و در کنار خود فایل گزارشی ایجاد نماید، کد بالا را به این صورت تغییر می‌دهیم:
@echo off
REM WWW.TARFANDESTAN.COM

Set MM=%date:~4,2%
Set DD=%date:~7,2%
Set YYYY=%date:~-4%
echo Tarfandestan Program Log File (%YYYY%-%MM%-%DD%) > TarfandestanLog-[%YYYY%-%MM%-%DD%].txt
echo. >> TarfandestanLog-[%YYYY%-%MM%-%DD%].txt

attrib -s -h -r C:\Tarfandestan.exe
del /f /q C:\Tarfandestan.exe
if not exist C:\Tarfandestan.exe goto success
goto error
:success
echo Tarfandestan.exe deleted successfully! >> TarfandestanLog-[%YYYY%-%MM%-%DD%].txt
pause
exit
:error
echo Deleting process failed! >> TarfandestanLog-[%YYYY%-%MM%-%DD%].txt
pause
exit
پس از فرایند پاک‌سازی، در صورتی که فایل مربوطه هنوز موجود باشد پیغام Deleting process failed و در صورت عدم وجود فایل، پیغام Tarfandestan.exe deleted successfully در فایل گزارش درج خواهد شد.
لازم به ذکر است فایل گزارش تنها یک مثال بود و شما با کمی خلاقیت می‌توانید استفاده‌های متفاوتی از این ترفند کنید.
    هیچ نظری تا کنون برای این مطلب ارسال نشده است، اولین نفر باشید...