NetForumlari Nacizane  Paylasim Platformu NetForumlari Nacizane  Paylasim Platformu


Go Back   NetForumlari Nacizane Paylasim Platformu > IRC • mIRC • Hosting • Genel IRCD > mIRC Scripting ( Genel ) > mIRC Dersler ve Bilgiler



Etiketlenen Kullanıcılar

Yeni Konu aç Cevapla
 
Paylaş LinkBack Seçenekler Stil
Alt 21-01-11, 01:01   #1
ProdoziaC - ait Kullanıcı Resmi (Avatar)
Üyelik tarihi: Jan 2011
Yaş: 25
Mesajlar: 2.606
Konular: 909
Aldığı Teşekkür : 1
NF Puanı : 23890
NF Seviyesi : ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute ProdoziaC has a reputation beyond repute
Post Alias kullanımı(Geniş bilgi)

Açıklama:
Alias kelimesinin kimseye yabancı gelmediğini biliyorum.
Aliases kullanımı mIRC'de gayet basit olmakla beraber, hayal gücünüze bağlı olarak; gerek komut oluşturma gerek identifier oluşturmanıza yarar.

-

Basit kullanım(Giriş)

Örneğin: /allnotice diye bir komut oluşturalım ve bu komut ile tüm bulunduğumuz kanallara notice yollayalım.
Komut: /allnotice

Alias: allnotice if ($1) { var %1 = 1 | while (%1 <= $chan(0)) { notice $chan(%1) $1- | inc %1 } }


Kod açıklaması:
;Alias ismimizi belirledik.
allnotice {
;$1 1. kelime demek. Yani /allnotice kelime($1) Diyoruzki, eğer 1. kelime girilmişse yani mevcut ise
if ($1) {
;%1 isminde bir değişken oluşturup değer olarak 1 atıyoruz.
var %1 = 1
;/while komutu ile %1 değişkenini(değer = 1) bulunduğumuz kanal sayısınına($chan(0)) eşitleyene kadar %1 değişkenini arttırıyoruz(/inc aşşağıda)
while (%1 <= $chan(0)) {
;/notice ile bulunduğumuz tüm kanallara $1-(1. kelime ve sonrasındaki girdiğimiz text) gönderiyoruz.
notice $chan(%1) $1-
;/inc komutu ile %1 değişkenini yukarıda belirttiğimiz gibi kanal sayısına eşit olana kadar arttırıyoruz.
inc %1
}
}

En basit kullanıma örnek bu şekilde verilir.
Şimdi diyeceksinizki; Arkadaşım iyi güzel hoşta yok /while dedin, yok /inc dedin? Bunlar nedir? Bunu bana söylemeden önce, /while kullanımınıda anlatayım.


Zaten mIRC'da /help aliases yazdığınız zaman while loops konusunu göreceksiniz.

While Loops:

While (vakit, zaman, müddet, süre, iken) tabirlerine gelmektedir.
Mantık olarak /while komutunda açılan bracket sonrasındaki tüm işlevler belirlediğiniz şekilde TEKRARLANIR.
Komut içerisinde ek olarak /break ve /continue komutlarıda vardır. Bunları açıklayacağım.

While'da işlev yapacağınız değişkeni oluştururken /set yerine /var kullanırsanız daha mantıklı olur. Çünki /set kullandığınız'da, tekrarlama işlemi sona erdiğinde oluşturduğunuz değişken silinmez. Ama /var kullanırsanız, tekrarlama işlemi sona erdiğinde değişken silinir.

Örnek bir kullanım gösterelim: //var %1 = 1 | while (%1 <= 10) { echo -a Sayı: %1 | inc %1 }

Burada %1 adında bir değişken oluşturduk ve değer olarak 1 verdik.
/echo komutunu %1 değeri 10 olana kadar tekrarladık.
Yukarıda görüldüğü gibi mantık gayet basit.

/break kullanımı:
Bu komut ise tekrarlama işlemini durdurmak için kullanılır.
Örnek bir kod göstereceğim. Zaten burada /break komutunun manığını iyice çözeceksiniz.
Örneğin: Mesela bir txt dosyasının içerisinde belirlediğimiz bir kelimeyi arayalım.
Kod: //var %1 = 1 | while (%1 <= $lines(deneme.txt)) { if ($regex($read(deneme.txt),$1)) { echo -a Kelime bulundu. | break } | inc %1 }

Burada diyoruzki: %1 adında bir değiken oluşturup değer olarak 1 veriyoruz.
Sonra deneme.txt dosyasındaki satır sayısını($lines(deneme.txt)) %1 değişkenine eşitleyene kadar, /if komutunu uyguluyoruz. /if komutunda(eğer 1. kelime deneme.txt dosyasının içinde mevcut ise, /echo komutu ile "kelime bulundu." verisini aktif ekrana yansıt.)
Şimdi diyeceksinizki "arkadaşım /break kullandında ne işe yaradı? kullanmasanda "kelime bulundu." verisini alıcaktık?
Bende diyorumki: Evet alıcaktınız. Ama kelime ilk satırda olsa bile, son satır'ı okuyana kadar while devam eicekti. Yani burada diyoruzki eğer 1. kelime, deneme.txt dosyasındaki herhangi bir satırdaki veri ile eşleşdiği taktirde, "kelime bulundu." verisini yansıt ve tekrarlama işlemini durdur. Mantık bu kadar basit.

Ek bilgi: Herhangi bir tekrarlanma işlevi gerçekleşirken, CTRL+Break tuşuna basarsanız, tekrarlanma işlevi sona erecektir.
Sanırım while loops hakkında anlaşılmayan bir konu kalmadı.


Aliases kullanımında $1,$2,$5- gibi tabirler nedir?:

Bunun mantığı oldukça basitdir. $1 1. kelime demektir.
Örneğin; /deneme isminde bir aliasımız var. /deneme komutundan sonra gelen ilk veri $1 olur. Mantığı gayet basit.

Örnekle gösterelim: alias deneme if ($1 == ok) { echo -a 1. kelime ok. } | if ($1 == not) { echo -a 1. kelime not. }

Denemek için, /deneme ok ve /deneme not yazınız. En basit mantığı budur.

İdentifier şeklinde aliases kullanımı:

mIRC ile uğraşan her kişi, identifier kelimesinin ne manaya geldiğini bilir.
Bilmiyorsanız söyleyeyim, mIRC'de gördüğünüz $ ile başlayan bir takım kullanımlar.
Örneğin: Token identifier'larından $addtok veya en basit olarak bilinen identifier $nick gibi.

-

Şimdi bizde aliases kullanımında bunun nasıl yapılabileceğini öğreneceğiz.
Örneğin: Bir kanal içerisindeki belirlediğimiz bir harf ile başlayan kullanıcıları belirliyelim.

Kod:
alias chk if ($1 && $2) { var %1 = 1,%2 | while (%1 <= $nick($1,0)) { if ($regex($nick($1,%1),$2)) { %2 = $addtok(%2,$nick($1,%1),32) } | inc %1 } | return %2 }

Örnek kullanım: $chk(#kanalismi,a)
Gördüğünüz gibi bir identifier oluşturduk, aliases kullanarak.
Kullanım tarzı size kalmış. //echo -a $chk(#kanalismi,a) olarak veya //msg #kanal Rumuzunun içerisinde z harfi bulunan kullanıcılar: $chk(#kanalismi,z) gibi.


Aliases $prop kullanımı:

Örnek bir identifier: $group(#grup-ismi).fname (#grup-ismi grubunun dosya yolunu verir)
İşte buradaki fname prop(propertie) oluyor.
Buna örnek olarak yukarıdaki alias ile örnek vereceğim.
Kod:
alias chk if ($1 && $2) { var %1 = 1,%2 | while (%1 <= $nick($1,0)) { if ($+($iif($prop == not,!$regex($nick($1,%1),$2),$regex($nick($1,%1),$ 2)))) { %2 = $addtok(%2,$nick($1,%1),32) } | inc %1 } | return %2 }

Burada diyoruzki, eğer prop not ise, ters işlev yap. Yani nick'inin içinde belirtilen harf olmayan kullanıcıları göster.
Daha basit bir kod ile;
alias deneme var %1 = Bur bir denemedir. | if ($prop == ok) { return Bu bir deneme değildir. } | return %1
//echo -a $deneme => Bur bir denemedir.
//echo -a $deneme().ok => Bu bir deneme değildir.
şeklinde dönecektir.


Alias kullanımında -l parametresi:
Herhangi bir alias oluştururken, -l anahtarını kullanırsanız, manuel olarak o alias'ı uygulayamazsınız. Kullanmaya kalktığınızda, alias ekli değilmiş gibi hata verir.
Örneğin: alias -l deneme echo * Bu bir denemedir.
/deneme yazdığınız'da alias'ın çalışmadığını göreceksiniz. Yani kısacası manuel olarak işlev görmez. Ama otomatik olarak görür.
Örneğin; alias deneme1 deneme
Yaptığınız'da çalışacaktır.

Sanırım aliases hakkında anlaşılmayan birşey kalmadı.
Elimden geldiğince açıklamaya çalıştım. Kolay gelsin.
________________

[Link Görmek ve Forumumuzdan Yararlanmak İçin Üye Olmasınız. ]



ωєв мαδтєя - ℓιиυχ - δєσ - му-δqℓ - ωєв ¢σ∂єя ¢σσя∂ιиαтισи'δ







ProdoziaC isimli Üye şimdilik offline konumundadır  
Alıntı ile Cevapla
Cevapla

Sosyal Ağlar

Etiketler
alias , bilgi , kullanımıgeniş


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
$gettok kullanımı (geniş anlatım) ProdoziaC mIRC Dersler ve Bilgiler 0 21-01-11 00:51
Variable(s) - Değişkenler Geniş Bilgi. ProdoziaC mIRC Dersler ve Bilgiler 0 20-01-11 22:56
Geniş Aile Resimleri, Geniş Aile Resim ve İmzaları Ezgi Avatar & İmza 0 18-01-11 01:07
Active CPU işlemci kullanımı hakkında bilgi LideR Sistem ve Internet Araçları 1 11-12-08 18:30
BySoft FreeRAM işlemci kullanımı hakkında bilgi veren program LideR Sistem ve Internet Araçları 0 02-09-08 22:50


Forum Yasal Uyarı

Powered by vBulletin® Version 3.8.7 .
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0 RC 2

İçerik sağlayacı paylaşım sitelerinden biri olan NetForumlari.COM Adresimizde 5651 Sayılı Kanun'un 8. Maddesine ve T.C.K'nın 125. Maddesine göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur. NetForumlari.COM hakkında yapılacak tüm hukuksal Şikayetler, Yöneticilerimiz ile iletişime geçilmesi yada iletişim formunu doldurulması halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 1 (Bir) Hafta içerisinde NetForumlari yönetimi olarak tarafımızdan gereken işlemler yapılacak ve size dönüş sağlanacaktır. info@netforumlari.com
hastaneler | cikcik | tivitır | güzel sözler | ankara avukat