ידע בסיסי למתחילים - תכנות BAT
-
לפניכם מדריך בסיסי למתחילים בתכנות BAT ניתן לצפייה רק למשתמשים מחוברים.
|| ידע בסיסי למתחילים:
מהי בכלל שפת batch?
שפת batch היא נמצאת בעידן הנידח של מחשבי הdos. היא נותנת הרצת תוכניות אחת אחרי השנייה, נהדר לקבצי חילוץ, והכנת תוכנות הרצה...
איך זה קשור להיום?
מכירים את חלון הפקודות השחור של ווינדוס? הוא מבוסס שפת batch החלון נקרא ms-dos
Microsoft Dos
ואנחנו נלמד להכין בו תוכנות.- התחלת העבודה בשפת batch
כדי להתחיל לעבוד עם ms-dos, ולהתחיל לתכנת, לכו לdesktop שלכם.
desktop-שולחן העבודה
ותפתחו קובץ חדש של מסמך טקסט.
לקובץ תקראו batch learning, או כל שם שבא לכם
תפתחו אותו, וכאן נתחיל לתכנת.
נ.ב-בינינו, אפשר לתכנת דרכו דפי HTML גם, אבל לא נכנס לזה עכשיו...- פקודות הרצה, פקודות בסיסיות, וכו'
כדי להתחיל תיכנות של batch, צריך להתחיל את השורה הראשונה בדבר הזה:
@echo off
זאתי פקודה האומרת שלא להציג בms-dos את התהליך, אלא רק את התוצאות.
יש גם :@echo on
זאת פקודה האומרת כן להציג בms-dos את התהליך, וגם את התוצאות.
בכל אופן, נשתמש בראשון, פחות סיבוכים.אם ברצונכם לכתוב הודעה בקובץ, נגיד...
hello
תצטרכו לכתוב זאת כך:
echo hello
ביינתיים יצא לכם את הדבר הזה:
@echo off echo hello
עכשיו סיומת.
כל דבר, כדי לראות אותו אחר כך, עליכם לכתוב בסוף את הפקודהpause
הפקודה pause נותנת לכם את השורה בתצוגה שאומרת:
please press any key for continue
...
זה כדי לראות את התוצאה, בלי זה זה יתכבה כעבור כ...שנייה.. אפילו פחות.
יש עוד פקודת סיום, שנקראתclr
clr
מעיפה ישר את החלון (סוגרת אותו)טוב אז מה יצא לנו עד עכשיו:
@echo off echo hello pause
עכשיו, תעשו קובץ>שמירה בשם.
בשמור כסוג...
תשנו את זה לall files
ועכשיו השם:
תשמרו אותו בתור XXX.bat
אפשר להחליף את הXXX לשם שאתם רוצים.
.bat נותנת פקודה למחשב שמדובר בקובץ ms-dos
תשמרו אותו בשולחן העבודה...
יהיה לכם קובץ כזה שנראה כמו חלון שבתוכו ציר כזה.
תיכנסו, ותראו מה יצא לכם!
אם כתוב לכם:hello please press any key for continue
הצלחתם!כל הכבוד.המשיכו הלאה.. אם לא תקראו שוב..
- פתיחת תוכניות,מחיקת תוכניות,וכו'
אוקיי, הפקודות שאנחנו יודעים הם:
COMMANDS:קוד
@echo off @echo on echo clear pause
עכשיו הגיע הזמן לעוד שתי פקודות:
פקודה ראשונה:
start
הרצת תוכנית. קל וחומר.
תפתחו את הnotepad
תכתבו בו:
@echo off
start iexplore
pauseאוקיי...מה שכרגע הפעלנו היה הinternet explorer
תשמרו אותו בתור קובץ bat, ותפתחו. אם נפתח לכם האינטרנט, הצלחתם.נ.ב.
לרשימת התוכניות תלחצו ctrl+alt+delete
ככה תיכנסו למנהל התוכניות, ושמה אל תהליכים.
הנה כמה תהליכים בסיסיים:
iexplore-אינטרנט אקספלורר
notepad-מסמך טקסט
וכו'.פקודה שנייה:
del
מחיקת קובץ.
תיזהרו עם זה. שלא תמחקו משהו חשוב.
למחיקה, נו...מה שתרצו לכתוב, תכתבו את הדרך אליו:
נגיד...יש לכם קובץ bat תחת השם LOL
בprogram files
אז תכתבו ככה כדי למחוק אותו:
@echo off
del C:\Program Files\LOL.bat
pauseהבנתם את הרעיון...ותיזהרו עם הפקודה הזאת.
- שילוב כל התוכניות.
עשיתם את הכל יפה מאוד.
כל הפקודות:
COMMANDS:
קוד
@echo off
@echo on
echo
pause
clr
start
del
עכשיו תרגיל:
תכתבו את כל הפקודות,את כ-ו-ל-ם, באותו המסמך, ותשמרו בקובץ bat
כאן אני אציג בפניכם עוד כמה פקודות בסיסיות, נבנה עוד תוכנה מגניבה, ואם תצליחו, אז כל הכבוד!
אוקיי, הפקודות שאנחנו יודעים הם
קוד
@echo off
@echo on
echo
pause
clr
start
del
בוא נתחיל
1.פקודות חדשות
deltree
אותו דבר כמו del
רק שזה מוחק תיקייה שלמה.
dir
מראה את כל הקבצים בתיקייה.
netstat -a
מראה את כל הפורטים שמשתמשים בהם
פורט-יציאה/כניסה במחשב.
כדאי שתדעו.חשוב
ren XXX YYY
משנה שמות של תיקיות.
XXX זאתי התקייה שאת השם שלה אנחנו רוצים לשנות
YYY זה השם שאנחנו משנים.
דוגמא:
ren Doom Doom2
לשנות את תיקיית DOOM
לתיקיית DOOM2
זה בעיקר בשימוש בוירוסים, מי שמבין מבין...
cd
מחזיר אתכם לכונן
cd..
מחזיר תיקייה אחת אחורה. שימושי
rem
פקודה המציגה הודעות למי שרואה את הקוד.
עם אתם משתמשים ב@echo off
אז לא ייראו אותה
type
להציג תוכן של קובץ כל שהוא.
ctty nul
שולח את כל הפלטים אל nul
ככה שלא תראו כלום
אני אפסיק לבינתיים, כי זה די הרבה...2.תרגיל
תפתחו את המסמך רשימות, ופשוט...תתחילו לשחק עם הקודים האלה. רק אל תפגעו בשום דבר חשוב במחשב.
נ.ב.אני לא אחראי לשום נזקניסיתם הצלחתם??? מצוין בוא נמשיך הלאה...
עכשיו נלמד להכין לולאות, להשתמש במשתנים, וכד'.
הפקודות שאנחנו יודעים
חלק ראשון:
קוד
@echo off
@echo on
echo
pause
clr
start
del
חלק שני:
קוד
deltree
dir
netstat -a
ren
cd
cd..
rem
type
ctty nul
נתחיל בחלק השלישי.1.משתנים
לפני שנלמד על המשתנים,אתם חייבים לדעת:
אסור להציב מספר בתור משתנה.
בשביל להציב משתנה אנחנו נשתמש בפקודה set
דוגמא:
set XXX=YYY
אם אנחנו רוצים להשתמש במשתנה XXX
נשים אותו בין תווי אחוזים
לדוגמא:
%XXX%
אז זה יציג במקום XXX את YYY
כמובן שאפשר להחליף את זה למה שתרצו.
רק לזכור את חוק הברזל המודגש.תכנית דוגמא:
קוד
@echo off
set XXX=YYY
echo XXX
echo %XXX%
pause
תרשמו את זה,ותפעילו.
אם הפלט הוא:
XXX
YYY
אז זה יצא לכם נכון.נמשיך...
2.הגדרת לייבל ושימוש בפקודת goto
הפקודה goto היא בשביל לקפוץ למקום כלשהוא בתכנית.
לייבל הוא בעצם שלב כלשהוא בתכנית.
מוזר שכותבים אותו בשפת באטץ' בתור label
מגדירים אותו ככה:
label:
חשוב שיהיה בסוף את הנקודיים.
תכנית לדוגמא:
קוד
@echo off
hello:
echo XXX
goto hello
תרשמו את התכנית, ותפעילו אותה.
תראו מה קורה.
כדי לעצור את הלולאה יש ללחוץ על Ctrl+C3.משפטי תנאי.
כאן כבר מגיע חומר די קשה.
יש שלושה סוגים של משפטי תנאי:- if exist something.XXX command
- If something==something command
- if errorlevel something command
הסברים:
1.הפקודה בודקת אם הקובץ נמצא ואם הוא נמצא אז הוא מבצע פקודה שנגיד לו.
something.XXX זה שם עם סיומת מסויימת.
דוגמא:
קוד
@echo off
if exist c:\windows\system32\user32.dll goto Do
goto Dont do
:Do
del c:\windows\system32\user32.dll
:Dont do
echo damn...
pause
הסברים: זה יחפש אם יש את הקובץ המצויין, ואם יש, אז הוא ימחוק אותו, ואם לא, אז הוא יציג את הפלט damn...
אזהרה - הדוגמא היא ללמידה בלבד. אין להפעיל אותה בשום פנים ואופן!2.הפקודה בודקת שוויון בין שני מספרים, אותיות, או כל דבר.
אם הם שווים, אז זה יבצע את הפקודה. אם לא, נו...לא יבצע את הפקודה.
דוגמא:
קוד
@echo off
set a=b
if "%1%"=="b" goto Do
goto Dont do
:Do
echo good
:Dont do
echo bad
pause
כמו שאפשר להבין, הוא משווה אותיות a וb
כמובן שהם לא שווים.- בודק אם יש שגיאות בתכנית.
מישתמשים פה בפקודה choice
ומשמעותה היא בחירה.
דוגמא:
קוד
@echo off
choice
if errorlevel 2 goto Do
if errorlevel 1 goto Dont do
:Do
echo good
:Dont do
echo bad
pause
הסבר:
בוחר את אחת האפשרויות.
אם אין שגיאות, זה ייבחר את הראשונה.
אם יש שגיאות, זה ייבחר את השנייה. ||