Leoman’s blog

bi blög

Mikrotik üzerinde betik programcılığı

leave a comment

Mikrotik bildiğiniz üzre kolay kullanımı için güzel bir görsel kullanıcı arayüzüne sahiptir.  Bu arayüz sayesinde çok kolay ayarlanabilen, takip edilebilen, kullanıcı dostu bir işletim sistmidir.

Bu kadar kolaylık arasında ya kendimize/duruma özel işlemler yapmak istersek? Ya aynı işlemi defalarca yapmak zorunda isek? Ya da bir işlemi sayısız kere belirli aralıklarla yapmak zorunda isek?

Bu kadar esnek bir sistem tabi ki de buna da imkan tanıyacaktır. Mikrotik güçlü kabuğu sayesinde tüm işlerinizi otomatik hale getirmenize ya da durumlara özel çareler üretmenize yardımcı olacaktır.  Kabuk üzerinden (Telnet/SSH/Winbox/Serial) işinize uygun bir betik yazarak dilediğiniz gibi tüm işlemlerinizi gerçekleştirebilirsiniz.

Genel anlamda kullanacağımız kabuk *nix üzerinde yer alan kabuklardan pek te farklı değildir. Bash ya da sh’ta kullanmış olduğumuz “\”, “;” ,”#”,”{}”,”[]”  sınırlayıcılar pek fark olmadan yine bu kabuk üzerinde kullanılabilir.

Veri tipleri

Betik yazımı sırasında sık sık kullanacağımız değişkenler için önceden belirlenmiş tipler mevcuttur. Bunlar;

  • number – 64 bitlik Integer tipi değişken türü (işaretli +/-), aynı zamanda hexadecimal veri girişi de mümkündür.
  • boolean – doğru/yanlış veri tipi, true ya da false değerlerini alabilmektedir.
  • string – karakter dizisidir. “test verisi” gibi bir değer alabilir.
  • IP – IP adresi barındırabilen veri tipidir.
  • time – tarih ve zaman tutan veri tipidir.
  • array – dizi verileri tutabilen veri tipidir.
  • nil – öntanımlı veri tipidir, değişken değer verilmediği sürece değeri nil’dir.

Ayrımlama işaretleri

  • \”       –  çift tırnak
  • \\     – ters bölü
  • \n     – yeni satır
  • \r     – satır başı
  • \t     – yatay sekme
  • \$
  • \?
  • \_     – boşluk
  • \a     – zil
  • \b     – gerisilme
  • \f     – sayfa ileri
  • \v     – yatay sekme
  • \xx     – onaltılık düzende değer

Operatörler

Aritmetiksel Operatörler

  • +  toplama
  • –   çıkarna
  • /  bölme
  • *  çarpma
  • –  negatif

Karşılaştırma Operatörleri

  • < küçükse
  • > büyükse
  • <= küçük ve eşitse
  • >= büyük ve eşitse
  • = eşitse
  • != eşit değilse

Mantıksal Operatörler

  • “!” / “not”  değilse
  • “&&” / “and” ve
  • “||” / “or” veya

Bitsel Operatörler

Bitsel operatörler yanlızca number ve IP veritiplerindeki değişkenler/değerler için kullanılabilmektedir.

  • “~”  değil, bitin tersini alma
  • “&” ve (1 ve işleminde etkisiz, 0 biti ise yutan elemandır)
  • “|” veya (0 ve işleminde etkisiz, 1 biti ise yutan elemandır)
  • “^” özel veya (aynı bitler için 0, farklı bitler için 1 elde eder)
  • “<<” sola kaydırma  (belirtilen değer kadar bitleri sola kaydırır)
  • “>>” sağa kaydırma (belirtilen değer kadar bitleri sağa kaydırır)

Birleştirme operatörleri

  • “.” İki karakter dizisini birbirine bağlar.
  • “,” Dizi elemanlarını birbiri ardına sıralar/Diziye yeni değer ekler.

Written by leoman

January 20th, 2009 at 6:05 am

Leave a Reply