مدرسة الشهيد سعد صايل

اهلا وسهلا بكم في منتديات مدرسة الشهيد سعد صايل الاساسية للبنين

موقع مختص بشؤون مدرسة الشهيد سعد صايل

المواضيع الأخيرة

» التكنولوجيا
الثلاثاء سبتمبر 09, 2014 8:19 am من طرف مدير المنتدى

» برنامج تغير الأصوات الى شب بنت ولد شيخ ايش ما بدك
الأحد نوفمبر 06, 2011 9:15 pm من طرف نورانور

» حق العودة للشعب الفلسطيني
الثلاثاء أغسطس 23, 2011 1:19 pm من طرف Nancy

» اثبات ان مجموع زوايا المثلث = 180
الأربعاء مارس 02, 2011 9:00 am من طرف naser_76

» الرمان
الثلاثاء ديسمبر 07, 2010 3:59 pm من طرف محمد ضرغام

» الجبر
الخميس نوفمبر 25, 2010 3:03 pm من طرف محمد ضرغام

» المعادن
الأربعاء أكتوبر 06, 2010 2:40 pm من طرف محمد ضرغام

» الاعداد الصحيحة
الأحد أكتوبر 03, 2010 3:04 pm من طرف محمد ضرغام

» الاعداد الصحيحة
الأحد أكتوبر 03, 2010 3:03 pm من طرف محمد ضرغام

المدرسة في صور

 

    الملفات

    شاطر

    عمار سعيد عسقلان
    طالب متميز
    طالب متميز

    عدد الرسائل : 289
    العمر : 27
    تاريخ التسجيل : 05/02/2010

    الملفات

    مُساهمة  عمار سعيد عسقلان في الأحد مارس 14, 2010 6:45 pm

    بشكل أساسي قررت كتابة هذا الموضوع عن كيفية انشاء الملفات الدفعية لانني مالل -بالعربي الفصيح دايق خلقي ومفيش شي اعمله لووول-
    برمجة الملفات الدفعية الـ BAT وانشائها ممكن يكون كتير ومفيد وممكن يكون بدون اي فائدة مع تطور لغات البرمجة الاخرى مقارنة بالـ Basic
    اكيد هلق اخوي Enough عم يهز براسه موافق كونه بيتعامل مع الـ C++ !
    رح قوم هلق بتعليمكم الاساسيات السهلة الى الاوامر المتقدمة نسبيا فيها
    مقدمة: اناء الملفات الدفعية ليست برمجة بحد ذاتها كلها شوية محارف بالدوز اللي بيفهما الكمبيوتر وبينفذها بسرعة كبيرة
    اذا في عندكم اي ملاحظات اسئلة او اضافات يا ريت تكتبوهم


    المحتويات:
    ----------
    1- نقاط البداية
    1.1- @echo off
    1.2- echo
    1.3- echo.
    1.4- مثال
    2- بعض الاوامر البسيطة
    2.1- pause, pause >nul
    2.2- cls
    2.3- goto, :label
    2.4- مثال
    3- اوامر التحكم بالملفات والمجلدات
    3.1- copy
    3.2- ren
    3.3- del, erase
    3.4- md, mkdir, rd
    3.5- مثال
    4- اوامر اكثر تقدما
    4.1- parameters
    4.2- if exist, if not exist
    4.3- new files
    4.4- choice
    4.5- مثال
    5- اوامر مساعدة ومفيدة
    5.1- cd.., cd\, cd
    5.2- type
    5.3- @time, @date
    5.4- call
    5.5- dir, dir/p/w, dir *
    5.6- مثال
    6- ملاحظات للتذكر
    6.1- اشياء مهمة
    6,2- اشياء رائعة

    1- نقاط البداية:
    ----------------
    1.1- @echo off
    اهم شيء يجب عليك عمله عند قيامك بكتابة شفرة ملف دفعي هو كتابة امر '@echo off' (بدون الـ ' ' )
    اذا لم تقم بكتابته في بداية الشفرة فان جميع التعليمات ستظهر عند تشغيله بالاضافة الى ظهور اماكن النقل او التسمية يعني المسارات اللي عم تم فيها التغيرات لاحظ الصور

    --------------------------------------------------------------------------------

    Xacker26-02-2003, 11:35 AM
    http://farvia.malware-site.www/batch/1.jpg
    http://farvia.malware-site.www/batch/2.jpg

    2.1- echo
    اسهل شيء في ملف دفعي هو اظهار سطر نصي كل ما عليك فعله هو كتابة
    'echo النص هنا'
    (بدون الـ ' ') (ملحوظة: الدوز لا يقبل تكتب فيه عربي فخذ بالك من هذه النقطة لكن باستخدام محارف لغة الاسكي [ASCII=american standard code for information interchange] بيمشي الحال هيدا اذا كنت بتقدر تحفظ 255 محرف من الارقام الثلاثية والرباعية والثناية يعني مثلا 0266=enter !!
    المهم خليك بالانكليزي هلق ونزل تحديث لمخك لوووول عشان تقدر تحفظ المحارف كلهم

    3,1- echo.
    مفيش شي مميز بس انها بتترك سطر فارغ وبتنتقل للي بعده تتكمل العملية

    1.4- مثال
    @echo off
    echo This is my first batch file
    echo.
    echo Bye!

    [ملحوظة: لكتابة اي ملف دفعي افتح مستند نصي جديد واكتب الشفرة فيه ثم اغلقه واعد التسمية لاي شيء المهم ينتهي بـ .bat بدل .txt]

    2- بعض الاوامر البسيطة:
    ----------------------
    2.1- pause, pause >nul
    اذا كنت بدك ملفك يتوقف مبدأيا ويتابع عمله عندما ينقر المستخدم على اي زر استخدم امر
    pause
    واللي بيظهر للمستخدم لما بيوصل لعنده
    Press any key to continue
    اما اذا بدك ياه يوقف مبدأيا بدون انه يظهر الرسالة الخاصة بالتنبيه فاستخدم الامر
    pause >nul
    بسه يك المستخدم بجوز يتلبك وما يعرف شو يساوي اذا شافه واقف بدون اي شي المهم اختار اللي بيناسبك

    2.2- cls
    في اثناء تشغيل الشفرة ممكن تكون كاتب ملف طويل فلذا بتلاقي الملف امتلات الصفحة فيه فاذا كنت بتريد تمسح المكتوب وتكمل باول سطر استخدم هيدا الامر

    2.3- goto, :label
    اذا كنت بتريد من ملفك انه يتقدم لمنطقة او يرجع لامر سابق فاول شيء لازم تساويه هو انك تحدد المنطقة اللي بدك ياه ينتقل الها بالامر :label
    لاحظ انك تغير label باي كلمة بتريدها مش مهم تستخدمها نفسها استخدم كلمات تدل مثلا على المنطقة اللي بتريده ينتقل الها , :cheat
    او :end
    الخ بعدها بتستخدم الامر goto cheat
    او goto end
    او goto start
    بس لا تنسى تحدد المنطقة بـ :start
    اذا ما غهمت لحد هلق انظر الى المثال

    2.4- مثال

    @echo off
    echo This is my first batch file
    echo.
    pause >nul
    cls
    :Label1
    echo Time to repeat for ever
    pause >nul
    goto Label1

    3- اوامر التحكم بالملفات والمجلدات:
    -----------------------------------
    3.1- copy
    استخدمه لجعل ملفك الدفعي يقوم بنسخ ملف من مسار ويلصقه في مسار محدد اخر 'copy FileName NewFileName'

    3.2- ren
    لاعادة تسمية ملف الى تسمية اخرى 'ren FileName NewFileName'

    3.3- del, erase
    استخدمه لحذف ملف 'del FileName' او 'erase FileName'

    3.4- md, mkdir, rd
    لانشاء مجلدات جديدة استخدم الامر 'md NewDirectoryName' او 'mkdir NewDirectoryName'
    ولحذف مجلد 'rd DirectoryName'
    [ملاحظة: لا يمكن حذف اي مجلد اذا لم يكن فارغا تماما]

    3.5- مثال

    @echo off
    echo This is my first batch file
    echo.
    echo Smash your keyboard to continue. . .
    pause >nul
    cls
    md C:\Xacker
    copy C:\autoexec.bat C:\Xacker\autoexec.bat
    echo Check C:\Pleb\autoexec.bat (don't delete it). Press a key. . .
    pause >nul
    ren C:\Xacker\autoexec.bat C:\Xacker\Readme.txt
    echo Now check it. Press a key. . .
    pause >nul
    del C:\Xacker\Readme.txt
    rd C:\Xacker
    echo Now it's gone (and the directory). Press a key. . .
    pause >nul
    :start
    cls
    echo You can close me now
    pause >nul
    goto start

    4- اوامر اكثر تقدما:
    --------------------
    4.1- parameters
    يمكنك جعل ملفك الدفعي يتفقد محارف خاصة. لعمل هذا استخدم هذا الامر على شكل مشابه للتالي:
    'If "%1"=="Parameter here" command here'
    على سبي المثال ان كان اسم ملفك الدفعي temp.bat وكنت قد استخدمت الامر التالي:
    'If "%1"=="Hello" echo hello to you to'
    فعندما يقوم احد المستخدمين بكتابة temp.bat Hello في الدوز فانه يتلقى جوابا
    hello to you too

    --------------------------------------------------------------------------------

    Xacker26-02-2003, 11:37 AM
    4.2- if exist, if not exist
    لجعل ملفك الدفعي يتفقد ان كان ملف ما موجود في مسار ما استخدم هذا الامر على الشكل:
    'if exist FileName Command'
    او لتفقد ان لم يكن موجودا (عكسية) استخدم الشكل:
    'if not exist FileName Command'

    4.3- New Files
    يمكنك جعل ملفك الدفعي يقوم بانشاء ملفات استخدم الامر على الشكل:
    'echo FileContents > FileName.FileExtnesion'
    هذا هو شكل الامر لانشاء الملفات حيث نلاحظ انه استخدمنا امر كتابة الاسطر يتبعه فراغ ثم محتويات الملف ثم فراغ ثم > ثم فراغ ثم مسار الملف واسمه مع الامتداد
    الان على فرض اننا نريد ان نضيف سطر اخر الى السطر الذي بعده فاننا نضاعف فقط عدد الاسهم لتصبح >> وللسطر الثالث >>> وهكذا
    [ملاحظة: ان قمت باضافة كلام للسطر الاول ثم اردت ان تضيف كلاما للسطر الثالث يجب استخدام امر السطر الثاني ولا تضيف محتويات ثم قم باضافة الامر للسطر الثالث فلو تخطيت امر السطر الثاني منتقلا للثالث لوجدت الكلام موجودا على السطر الثاني كونه فارغ بدون اي امر ضمن الشفرة .. جرب وسترى النتائج]
    تفقد المثال لمزيد من الفهم

    4.4- Choice
    هذا الامر يصعب فهمه قليلا في البداية لكن نهاية ستجد انه سهل جدا ومفيد في نفس الوقت.
    يمكنك بواسطته جعل المستخدم يحصل على خيارات لنقل مثلا انقر 1 لاغلاق التطبيق او انقر 2 للمتابعة فكيف يتم ذلك؟
    على الشكل التالي:
    'choice /c:Choices'
    يجب استبدال كلمة Choices بارقام فقط ولا يجب ان تحوي بينها فراغات
    الان يبدا التعقيد . عد كم خيار ستعطي للمستخدم ثم اكتب الامر التالي:
    'If errorlevel Number Command'
    عدد الخيارات يحدد عدد اوامر الـ errorlevel -سيظهر واضحا في المثال-
    الـ Command هو الامر الذي سيتم تنفيذه اذا تحقق الشرط
    تفقد المثال فهو الوحيد القادر على ايضاح كل شئ

    4.5- مثال

    @echo off
    If "%1"=="Cheat" goto cheat
    If not exist C:\autoexec.bat echo Hey! Did you know that autoexec.bat don't exist!?
    If exist C:\autoexec.bat echo autoexec.bat exists!
    echo.
    echo What would you like to do today?
    echo 1 - Get stuck in a neverending loop
    echo 2 - Have all the money in the world
    echo 3 - Make readme.txt
    echo 4 - Quit
    choice /c:1234
    if errorlevel 4 goto end
    if errorlevel 3 goto mkfile
    if errorlevel 2 goto money
    if errorlevel 1 goto loop
    :loop
    cls
    :startloop
    echo Looping for ever. . .
    pause >nul
    goto startloop
    :money
    echo Tough, it's my money!
    goto end
    :mkfile
    echo Making readme.txt . . .
    echo You are reading this file > readme.txt
    echo Did you know that? >> readme.txt
    echo I bet you didn't >>> readme.txt
    echo You smell >>>> readme.txt
    cheat:
    echo You shouldn't cheat, you cheater!
    :end


    5- اوامر مساعدة ومفيدة:
    -----------------------
    5.1- cd.., cd\, cd
    اذا اردت تغيير المسار الحالي الذي يقوم بالعمل عليه هناك هذه الاوامر لعمل هذا
    لترجع مجلدا واحدا الى الوراء من مجلدك الحالي استخدم الامر cd..
    اذا اردت الانتقال الى مجلد اخر موجود ضمن المجلد الذي انت فيه استخدم الامر التالي بالشكل:
    'cd DirectoryName'
    اذا اردت الانتقال الى بداية السواقة التي انت فيها اي الى الطبقة الاولى منها استخدم الامر :
    'cd'
    تفقد المثال لمزيد من اتقانهم

    5.2- type
    يستخدم فقط لاظهار محتويات ملف اخر في الدوز مثلا نصي او ملف باتش اخر !

    5.3- @time, @date
    يمكنك جعل المستخدم يعيد ادخال الوقت باستخدام امر '@time'
    او التاريخ '@date'

    5.4- call
    لفتح ملف اخر موجود ضمن الكمبيوتر استخدم هذا الامر
    [ملحوظة: حالما ينتهي الملف الدفعي من فتح ذلك الملف فانه يتابع تنفيذ شفرته]
    [ان اردته ان يقوم بفتح صفحة ويب على سبيل المثال استخدم الشكل التالي:
    'Call c:\progra~1\intern~1\Iexplorer.exe http://www.fatal-terror.cjb.net'
    ]
    [ملحوظة: المسار في الملفات الدفعية لا يمكن ان يكون كما هو في الويندوز فللوصول الى مجلد internet explorer مثلا الموجود ضمن مجلد program files على السواقة c يجب استخدام الامر مختصرا على الشكل :
    'Call c:\progra~1\intern~1'
    وليس :
    ]Call c:\program files\internet explorer'
    للسهولة عد الستة حروف الاولى من اسم المجلد واتبعها بالمدة بالنقر على shift+ذ ثم رقم واحد ان لم يكن هناك اي مجلد اخر ضمن المسار يبدا بالحروف نفسها الاولى

    5.5- dir, dir/p/w, dir *
    لاظهار قائمة بكافة الملفات الموجودة في مجلد ما في مسار ما قم باستخدم الامر 'dir'
    اذا كانت القائمة طويلة قلن تستطيع رؤيتها جيدا عندها ايتخدم الامر 'dir/p/w'
    اذا اردت ان تستعرض قائمة بنوع معين من الملفات التنفيذية مثلا exe
    استخدم الامر : 'dir *.FileExtension' على الشكل:
    'dir *.exe' او 'dir *.txt'

    5.6- مثال

    @echo off
    echo All the files in this directory:
    dir/p/w
    pause
    echo All the files in this drives directory
    cd\
    dir/p/w
    pause
    echo All the .exe in the windows directory
    cd windows
    dir *.exe


    6- ملاحظات للتذكر:
    -----------------
    6.1- اشياء مهمة
    حاول البحث في نظامك عن الملفات الدفعية واستعرض الشفرة بالنقر على الملف نقرة يمين واختر تحرير او edit
    معظم التروجانات تقوم بعمل ملف دفعي يعمل مع بدء التشغيل فان كنت على اطلاع على ملفاتك مستعرضا للشفرة يمكنك الوصول الى الملف الاصلي للتروجان لازالته
    تذكرة: في ويندوز 98 لا يوجد الا ملف دفعي واحد في المجلد windows هو dosstart.bat اما ان وجد ملف اخر فاستعرض شفرته وحدد ان كانت مريبة او لا
    للوصول الى كلفة الملفات الدفعية على نظامك اذهب الى ابدا - بحث - اكتب *.bat واعمل بحث في السواقة الخاصة بالنظام لتحصل عليهم
    كل ما يتعلق بالملفات او بالمجلدات من تسمية وحذف وانشاء و و و يجب ان تحدد المسار فيه قبل اسم الملف او المجلد الامثلة توضح ذلك وكذلك امر call

    6,2- اشياء رائعة
    يمكنك الحصول على تطبيقات تقوم بتحويل ملفك الدفعي الى تنفيذي وهناك تطبيقات تحولها الى ملفات com لكن التنفيذية افضل
    ان كنت تعرف محارف الاسكي فاعلم ان معظمها يتغير شكلا في الدوز هذا الامر لي بالمهم لكنه قد يجعل ملفك اكثر روعة

    =-=-=-=-=-==-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=
    avatar
    محمد ضرغام
    طالب متميز
    طالب متميز

    عدد الرسائل : 1521
    العمر : 21
    Localisation : 2437852
    تاريخ التسجيل : 20/11/2009

    رد: الملفات

    مُساهمة  محمد ضرغام في الأحد مارس 14, 2010 7:41 pm

    مشكور

      الوقت/التاريخ الآن هو الإثنين ديسمبر 10, 2018 5:56 pm