اگر از علاقه‌مندان به اسکریپت‌نویسی فایل‌های 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 در فایل گزارش درج خواهد شد.
لازم به ذکر است فایل گزارش تنها یک مثال بود و شما با کمی خلاقیت می‌توانید استفاده‌های متفاوتی از این ترفند کنید.

 

این ترفند با مشارکت کاربر johncenam نوشته شده است.