Arşivler – Aralık, 2008
Merry XMas
Aralık 31st, 2008Posted in Genel, Haberler | No Comments »
Schedule in Linux
Aralık 29th, 2008Öğrenmişken bir de zamanlama mantığını öğrenelim;
Linuxda Crontab adında, süper bir zeka ürünü, harikalar ötesi, bir program mevcut. Öyleki zamanlama mantığı çok ileri çok hoş, mantık ve komut aşağıda ;
KOD:
sudo crontab -e
Mantık :
Kodu Çalıştırdığımızda
m h dom mth dow script şeklinde bir ifadeyle karşılaşırız.
Burada
- m – minute (0 — 59)
- h – hour (0 — 23)
- dom – day of month (1 — 31)
- mnt – month (1 — 12)
- dow – day of week (0 — 6) (0 = pazartesi)
- * = every (her)
şeklinde. Buradan da güzelliğin biraz farkına varmış olmanız lazım.
Bir örnek verecek olursak;
Dakika da bir çalışan zamanlayıcı;
* * * * * /script.sh
olur.
5. Haftanın her günü
4. Her Ay
3. Ayın Her Günü
2. Günün Her Saati
1. Saatin Her Dakikası script.sh dosyasını çalıştır.
şeklinde bir anlamı olur.
Başka bir örnek;
Her Pazar Saat 05:05 de çalışan script;
5 5 * * 0 script.sh
5. Haftanın Pazar Günü
4. Her Ay
3. Ayın Her günü ( && Gün = Pazar tabi ki)
2. Saat 5
1. Dakika 5 olduğunda script.sh çalıştır.
şeklinde olur.
Tags: Crontab, Linux
Posted in Linux | No Comments »
Linux’da Executable Dosya
Aralık 29th, 2008Bu dosya öyle bir dosya olmalı ki, windowstaki bat dosyaları gibi olmalı dedim ve birazcık arayınca dosya uzantısının “.sh” uzantısı olması gerektiğini öğrendim. Açılımı da zannedersem shell den gelmekte. Neyse maden dosyayı buldum, dosyayı açmak için edit benzeri bir console programı da vardır dedim. Evet o da varmış. “vi” diye terminalden çalışan bir program. Her şey iyi güzel, hemen
vi xxxx.sh
deyip varsa var olan dosya, yoksa yeni bir dosya açıyoruz. İçine bir önceki postumda yazdığım komutlardan tar ve gzip komutlarını yazıp kaydedelim.
tar -cf archive.tar file1
gzip archive.tar
Kaydedin dedim ama kaydedemiyeceğinizi düşünüyorum. Çünkü ben ilk aşamada kaydedemedim
Çıkış yapar iken q! karakterlerini girip, öyle sayfayı kapatabiliyoruz, haberiniz olsun. Karakterlerin ne işe yaradığını veya ne anlama geldiğini bilmiyorum valla.
Artık çalıştırılabilir dosyamızı hazırladığımıza göre, sıra bunu çalıştırmaya geldi. Ama hemen halışmıyor bu meretler. Önce bu dosyalarımıza chmod komutuyla executable yetkisini vermemiz gerekmekteymiş
Hemen verelim
chmod u+x archive.tar.gz
x ile executable yetkisini archive.tar.gz dosyamıza verdik. Şimdi aşağıdaki çalıştırma komutuyla, artık batch dosyamızı çalıştırabiliriz.
sh xxxx.sh
Note : Yukarıdaki komutları kullanırken, herhangi bir yetki problemi yaşarsanız komutun başına sudo (super user do) ekleyin.
Tags: Linux, shell, sudo
Posted in Linux | No Comments »
Linux’a, Network’teki Windows Klasörünü Mount Etme
Aralık 29th, 2008Komut tam anlamıyla aşağıdaki gibidir :
mount -t cifs //x.x.x.x/c$ /mnt/MountedWindows -0 username=username,password=password, iocharset=utf-8,file_mode=0777,dir_mode=0777
Yukarıdaki komut ile x.x.x.x ip li makinanın c klasörünü komple, linux makinamızdaki mnt klasöründeki MountedWindows klasörüne mount etmiş olduk. Italic olarak yazılmış olan yerleri kendinize göre değiştirmeyi unutmayın.
Tags: Linux, Mount
Posted in Linux | No Comments »
Compress Files in Linux
Aralık 29th, 2008Zip files are capable of archiving and compression. Unlike zip files, tar is for archiving only. In maths, this means :
Kb(file1) + Kb(file2) + Kb(File3) = Kb(file123.tar)
If you want to compress then you must gzip command. Gzip compress the file and reduces the size of file. In maths
Kb(file1.tar) > Kb(file1.tar.gz)
The tar Command :
tar -cf archive.tar file1
tar -cf archive.tar file1 file2 file3
tar -cf archive.tar Directory1
tar -cf /path/archive.tar /path/Directory1
The gzip Command :
gzip archived.tar
After archiving files or directorys, we get tar file, but after compression we get tar.gz file.
Tags: Compress, gzip, Linux, tar
Posted in Linux | No Comments »
Export DLL From Assembly
Aralık 28th, 2008GAC Util de bulunan DLL’lerinizi assembly klasörünüzden başka bir klasöre çıkarmak, başka bir makinaya taşımak veya kopyalamak, normal klasörlerdeki benzer işlemlere nazaran çok daha zordur. Herhangi bir dll in üzerine sağ tıklarsanız şekildeki gibi bir ekranla karşılaşırsınız.
şekilde de görüldüğü üzere istediğiniz işlemleri bulamayabilirsiniz. CTRL+c ve CTRL+x i denediğinizi görür gibi oluyorum. Fakat bu işlem de işinize yaramayacaktır. Assembly klasörünü başka bir makinaya komple kopyalarsanız, bu işlemle de sadece o makinanın dll lerini kopyalamış olursunuz. Uzun lafın kısası bu iş kolayca olmuyor
Uzun Yol ile :
- Bir adet command prompt açın,
- c:\\Windows\Assembly\GAC veya c:\\Windows\Assembly\GAC_MSIL klasörlerinden birinde istediğiniz DLL dosyasını bulun
- Örneğin xyz.dll dosyasını, Gac_MSIL klasöründe bulduk. c:\\Windows\Assembly\GAC_MSIL\xyz\ dizinine gidin, Buradaki xyz dizini, dll adıyla birebir aynıdır.
- Daha sonra aşağıdaki şekildeki gibi xyz.dll dosyası Assembly klasöründe bulunur ve dosyanın özelliklerine gidilir.

- Yukarıdaki şekilde altı çizili versiyon ve public key token bilgilerindeki “versiyon__publickeytoken” şeklindeki bir alt klasöre geçilir. Resimdeki DLL için örnek verecek olursak klasör adı : 10.0.4504.0__31bf3856ad364e35 olacaktır.
- Son olarak da bu klasör içerisinde “copy xyz.dll c:\xyz.dll” komutula dosyamızı istediğimiz yere kopyalayabiliriz.
Gözünüz korktu di mi
Düşünün bunlardan en az 200 tanesinin yedeğini almak istediğinizi,
Çözüm Kısa yolumuz :
- Basit olarak hazırladığım şu kodu kullanabilirsiniz :
- dllisimleri.txt dosyasının içeriğini de aşağıdaki gibi yaparsanız, istediğiniz dosyaları hemen alabilirsiniz;
- Başka bir kolaylık olarak Gac_MSIL klasörüne girdiğinizde dir /p, komutuyla command prompt dan tüm isimleri tarayabilirsiniz. Bu sayede tek tek kopyalamak zorunda kalmaz, rahatınıza bakarsınız…
FileStream fs = new FileStream("c:\\dllisimleri.txt", FileMode.Open, FileAccess.Read);
StreamReader sr = new StreamReader(fs);
string arguments;
string read = sr.ReadLine().Trim();
string read1 = sr.ReadLine().Trim();
while (read != null)
{
Console.WriteLine(read);
try
{
File.Copy("c:\\\\WINDOWS\\assembly\\Gac_MSIL\\" + read + "\\"+read1+"\\" + read + ".DLL", "C:\\\\DLL\\" + read + ".dll");
read = sr.ReadLine().Trim();
read1 = sr.ReadLine().Trim();
}
catch (Exception ex)
{
break;
}
}
xyz1
1.0.0.0__916a267ef328a0b9
xyz2
1.0.0.0__b715a15ad90d37db
xyz3
1.0.0.0__f4df43ff1813a7d4
xyz4
1.0.0.0__71e9bce111e9429c
buradaki xyz, kopyalamak istediğiniz dll dosyalarının ismi (.dll olmadan),
1.0.0.0__916a267ef328a0b9 bilgilerini de yukarıda anlattığım gibi hazırlayabilirsiniz.
Tags: command prompt, GAC, Global Assembly Cache, vs.net
Posted in .NeT 2008, Sharepoint | 2 Comments »
Bush
Aralık 16th, 2008Bush’un reflekslerinin neden bu kadar iyi olduğu ortaya çıkar…
Evet evet Bush kırmızı hapı yutmamış, mavi hapı yutmuştur
Posted in Geyik, Yaşam | No Comments »
Detektivbyrán
Aralık 16th, 2008Ciddi anlamda süper müzik yapan bir grup, Aşağıda örnek bir müzik bulabilirsiniz. Ama tüm şarkılarının güzel olduğunu söylemeden geçemiycem. Beğenirseniz dinleyin bence…
Posted in Genel | No Comments »
Bush ve Ayakkabı Kişilikleri
Aralık 16th, 2008Adam iyi atıo, ama bush da iyi kaçıo hakkını yemeyelim
Posted in Genel, Geyik, Yaşam | No Comments »
HTML Encode
Aralık 16th, 2008Veritabanına kayıt eklerken, bazı dış mahlukatlar tarafından saldırıya uğramak istemiyorsanız (SQL Injection), ekleme yaptığınız değerleri bir kontrolden geçirmenizde fayda var. En kolay yol olarak da size HTMLEncode metodunu önerebilirim. Kullanımı
string veri= HttpUtility.HtmlEncode(TextBox1.Text);
şeklindedir ve ilgili saldırılardan uzak yaşam sürmenizi sağlayacaktır.
Tags: .NeT, HtmlEncode
Posted in .NeT 2008 | No Comments »






