.Bat programlama etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
.Bat programlama etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

1 Mayıs 2017 Pazartesi

Batch Programlama Loops(Döngüler)

Merhabalar 
Bu ders batch programlamada kullanılan döngüleri içermektedir.
1-while döngü
syntax'ı
Set counters
:label
If (expression) (
Do_something
Increment counter
Go back to :label
)
Örnek döngü uygulaması
@echo off
SET /A "index=1"
SET /A "count=5"
:while
if %index% leq %count% (
echo The value of index is %index%
SET /A "index = index + 1"
goto :while
)
pause
Çıktı:
2-For döngüsü
List  syntax
FOR %%variable IN list DO do_something
Örnek:
@echo off
FOR %%F IN (1 2 3 4 5)
 DO
echo %%F
pause
Çıktı:

Aralık üzerinden döngü oluşturma
FOR /L %%variable IN (lowerlimit,Increment,Upperlimit) DO do_something
/L: döngünün aralıklarla oluştuğunu ifade etmek için kullanılır.
Örnek:
@ECHO OFF
FOR /L %%X IN (0,1,5) DO ECHO %%X
pause
Çıktı:
Dosya üzerinden döngü oluşturma
For /F ["opstions"]  %%parameter in (filenameset) do command
options:
tokens=n: tokens=5 olursa txt dosyasındaki her bir satırın 5.kelimesini gösterir. tokens1,5
olursa txt dosyasındaki her satırın 1.ve 5. kelimesini gösterir, tokens=1-5 olursa dosyadaki
herbir satırın 1,2,3,4,5. kelimesini gösterir.tokens=* olursa her satırdaki tüm kelimeleri
gösterir. 
skip=n:skip=1 olursa txt dosyasının başından 1. satırı göstermez, skip=2 olursa ilk 2 satırı
göstermez
delims=xxx: delims== olursa txt dosyasındaki  tüm "="'leri boşluk ile değiştiri. ";" olursa aynı şekilde boşluk ile değiştirir.
filenameset:Bir veya birden fazla dosya kümesi
parameter:Değiştirilebilir parametre
errorlevel: Eğer hiç bir data üretilmezse errorlevel 1 döner.





Batch Programlama if statements

Merhabalar,
Bu ders,  if ifadesini nasıl kullanıldığını içermektedir.. if ifadesinin genel kullanım sytax'ı aşağıdaki gibidir.
if(condition) do_something
İlk örneğimiz integer variable'ları kontrol etmek
@echo off
SET /A a=5
SET /A b=10
SET /A c=%a% + %b%
if %c% == 15 echo "The value of variable c is 15"
if %c% == 10 echo "The value of variable c is
pause
çıktı
Bu örnekte string variable kontrol etme işlemi
@echo off
SET str1=String1
SET str2=String2
if %str1% == String1 echo "The value of variable String1"
if %str2% == String3 echo "The value of variable c is String3"
pause
Çıktı:
if/else ifadesi:
If (condition) (do_something) ELSE (do_something_else)
İnteger variable'ları kontrol etme
@echo off
@echo off
SET /A a=5
SET /A b=10
SET /A c=%a% + %b%
if %c% == 15 (echo "The value of variable c is 15") else (echo "Unknown value")
if %c% == 10 (echo "The value of variable c is 10") else (echo "Unknown value")
pause
Çıktı:
if defined  ifadesi:
if defined some variable some command
@echo off SET
str1=String1
SET str2=String2
if defined str1 echo "Variable str1 is defined"
if defined str3 (echo "Variable str3 is defined") else (echo "Variable str3 is not defined")
pause
Çıktı:
if exist ifadesi
If exist somefile.ext do_something
@echo off
if exist C:\set3.txt (echo "File exists") else (echo "File does not exist")
pause
Çıktı:
Nested If Statements
if(condition1) if (condition2) do_something
@echo off
SET /A a=5
SET /A b=10
if %a% == 5 if %b% == 10 echo "The value of the variables are correct"
pause
Çıktı:
if goto statement
@echo off
SET /A a=5
SET /A b=10
if %a% == 5 goto :labela
if %b% == 10 goto :labelb
:labela
echo "The value of a is 5"
:labelb
echo "The value of a is 10"
pause
Çıktı:

Batch Programlama Variable

Merhabalar,
Bu ders batch programlada  değişken tanımlama için set komutu nasıl kullanıldığını içermektedir. Local ve global olmak üzere 2 tip değişken bulunmaktadır. Default olarak komut isteminde tanımlanan tüm değişkenler global'dır. Değişkenleri komut dosyanızda local yapmak için SETLOCAL komutu çağırılır. SETLOCAL komutu çağrıldıktan sonra değişkenler tanımlanır ve sonra ENDLOCAL ile değişken kullanımı belli bir alan ile sınırlandırılır. yani SETLOCAL ve ENDLOCAL arasında tanımlanan tüm değişkenler sadece bu iki komut arasında kullanılır.
Örnek 1:
@echo off
SETLOCAL
set x=true
echo x=%x%
endlocal
echo x=%x%
pause
Örnek 2:
@ECHO off
SET x=true
ECHO x = %x%
SETLOCAL
 SET x=false
 ECHO x = %x%
ENDLOCAL
echo x= %x%
pause
@echo off
title Variables
set /a toplam=2+2
echo 2+2= %toplam%
set /p deger=bir degisken girin
echo %deger%
pause
Yukardaki örnek kodun çıktısı aşaıdaki gibi
/a : Degisken ataması sırasında aritmetik işlemleri destekler.
/p: Değişken atamaları sırasında kullanıcıdan parametre alır.
@echo off
set /A a=5
set /A b=5
set /A c=%a%+%b%
echo %c%
set /A c=%a%-%b%
echo %c%
set /A c=%a%*%b%
echo %c%
set /A c=%a%/%b%
echo %c%
pause
Set komutunu bir stringin belli bir kısmını çıkarmak için aşağıdaki şekilde kullanılabilir.
@ECHO off
SET x=The sky above was quite gray
SET z=%x:~0,7%
ECHO %z%
pause
Aşağıda görüldüğü üzere ilk karakteri göstermektedir.

30 Nisan 2017 Pazar

Batch Programlamaya Giriş


Merhabalari
Bu ders batch programlamaya giriş niteliğinde örnekler içermektedir. ilk işlemimiz ekrana "Hello world!" yazmak. Bunun için  bir txt dosyasına aşağıdaki kodu ekleyin ve dosyasının uzantısını .bat yapın
@echo off
echo Hello world!
pause
Çıktı:
Yukardaki kodun sırayla açıklaması:
@echo off: Bu kodu eklemezsek .bat dosyasıının içindeki her kodu aşağıda görüldüğü üzere,  .bat dosyasını çalıştıran herkes görür
echo: Bu komut ekrana yazı yazdırmak için kullanılır C programlamadaki printf'e karşılık gelmektedir.
pause: Bu komut gelen ekranın kullanıcının onayı olmadan ekranı kapatmasını önlemek için kullanılır.Eğer komutu kullanmazsak .bat dosyasının içindeki işlemler sırayla tamamlandıktan sonra hemen kaybolur.
Batch programlamadan sık kullanılan komutlar
help: cmd ekranında bu komutu yazdığımızda .bat programlamada kullanılan komutları açıklamasıyla beraber listeler. Bir komutun nasıl kullanıldığını öğrenmek içinde kullanılır.
Örnek olarak
help for
help findstr
help rem
gibi
cls:Ekrandaki yazıyı siler
rem:.bat dosyası içine yorum satırı yazmak için kulllanılır.
exit:Bu komut, komut istemini sonlandırmak için kullanılır.
call:Bu komut .bat dosyasında başka bir .at dosyasını çağırmak için kullanılır.
tasklist:Bu komut, arkaplanda PID(işlem kimliği), oturum adı, bellek kullanımı ile birlikte şuanda çalışan tüm işlemleri görüntülemek için kullanılır.
taskkill: Bu komut local ve remote, belirtilen işlemi sonlandırmak için kullanılır.
title:Bu komut .bat dosyasının başlığı tanımlar.
@echo off
title Hello
echo Worlds
pause

tree: Dosya dizinleri tree şeklinde gösterir.
%time%:Mevcut saati gösterir.
color: Ekrandaki yazı rengini değiştirmek için kullanılır.
Kullanımı:
color 0
color 1
Environment Variable'lar

Örnek Kullanımı:
echo %CD%
echo %DATE%
gibi.