çmez diene hackledıgın sıte kac tane desem 1 bıle yoktur :) ne kdar if okdar endif

katılıyorum kardeşme! harbi istanbullu sen shell den anlıyon mu? "Konusma Bi Kızın Eteği Gibi;ilgiyi sürdürecek kadar kısa, konuyu kapsayacak kadar uzun olmalıdır.."

çmler toplanin su eski uyeleri kovalim burdan cok olmaya basladilar:)) daha dun geldik hadi bismillah çmüm lan iste varmi dicenis sizde bi eksiklik o eski uyelere sesleniom cmüm bi boq bilmiom iste Szlerim Silahlarim! İmza Kajmer...

valla agalar c/p olmadı diyelim sadece kendi üretkenliğimizi kullandık diyelim. Foruma kaç mesaj yazılacak sanıyorsunuz? Tabi c/p yapılacak ki bilmeyenlerde bişeyler ğrensin, o yazmasın ben yazmayayım... forumun ne anlamı kalır o zaman? bu hayatin taaaaa a. q.

tamam antikky hojam, daha çok dküman var, onları da mail atarım, umarım profilinde mail adresin vardır, bakmadım çünkü daha... istersen bunu burdan kaldırın, dkümanlara atayın daha faydalı olur, gznünde kalır... bu hayatin taaaaa a. q.

Lan çmez sensin. Sana 1 şey yazardım ama ban korkusu var. İlk nce forumlara yazı yazmayı ğren. Çok bilmiş heykır kızan!!

adam bişi paylamış üstüne gitmeyin bu kadar. ama bu anlamda çmezlerin okuyacaı ilk dküman bu olmamalı bence... daha ncesinde index nasıl hazırlanır. ynlendirme kodu nasıl koyulur vs gibi daha temel şeleri renmeleri lazım. cin olmadan adam çarpıcaklar : P

yaw çmez eklentisinden sonra bi gruplaşma olmaya başladı gibi... inşallah daha uzamaz... forumda 2-3 gündür dikkatimi çekio.. en az 10 farklı konuda tartışmanın sonu buraya varıoo... çmezler birbirini koruo filan.. arkadaşlar bunlara gerek yok... ayrıca sadece bilgiyle de lçmeyin... buraya zaman ayıran sizden nce gelmişler her daim sizden üstte gibi dururlar... zaten belli de olur bu.. sen shell üstadı gibi lee dalmışın ki konuya.. kendi kendini ezmişsin çmez dierek.. gerçekten çmez olduğunu konuya dank die girişinde anlamak hiç zor deil.. tahribat forum tecrübesi edinmediğin sürece hep çmez olarak kalırsın gibi gelio bana... yakında mod arkadaşlar da c/p ye başlıcaklar :D sizlere laf anlatmaktan sıkılıp...

klavyene saglık kardeş Nerede Olursan Ol Dünyadasın Sen

Copy paste yasak değil sadece byle uzun uzun dkümanlar koyma, kimse okumamıştır bunu zaten. Yada illa koycaksan worde at, güzel bir şekilde sonra uplaod et rapide falan ole koy.

İstanbullu sen shell den anlıyonmu? Tecavüzden Kaçış Yoksa Tadını Çıkar...

sen burayı yanlış tanımışsın güzelim C/p yapacağına buraya mesaj yazma daha çok itibar grürsün. senin bildiğin forumların aksine tahribat yle ileti kalabalığı olan bir forum değildir! bu da sana abi nasihatı :) Zimbabwe

Removed... hikaye

buranın büyük bir çoğunluğu senin anlattıklarını zaten biliyor. onuda geçelim bilmeyenler rahatlıkla ulaşabilir zaten bu dkümana.. herşeyden nce de copy paste pek hoş karşılanmaz burda sorun bu zaten Zimbabwe

Ben bile üşendim okuyamadım ama akşama bitiricem sz :). Bu arada doguhan sen gitmio muydun?

http://www.belgeler.org/bashref/bashref_shell. features.html

tahribat dkümanlar sayfasında kendi yaazddığın dkümanlar yer alır c/p yaptıkların deil..

sırf beni adam sansınlar diye c/P yapılmazki bide artizliğe bak çmler için yazmış sen çok farklısın sanki Mart 31 cekiyorsa Tahribat napsin...

a. q yeni üye gelmiş sizinle bişi paylaşmış tmm size çalıntıdır dior onuda gremionuzmu?tşk. etmeniz gerekirken sikionuz bide cmez olayına gelincede nedir bu saçmalık?yeni üyeleri eski üyelere ezdirmek için kullanılan bir yntemmi?birde cw ile alakalı bişi soracam nedir cw den alıp veremediginiz?hiç olmaz cw sizden farklı onlar yeni gelen üyelere cmez demior yada eski üyelere ezdirmior cw den farkınız bu! Nerede Olursan Ol Dünyadasın Sen

Tuncay bunu dedi :klavyene saglık kardeş klavyeyle ne alakası var kardeş direkt mousela ilgili :D... sorcerer & musket...

kopyala yapıştır yapmak ta bi emek artık değil mi Zimbabwe

Yeni üye olanlara çmez olarak hitap etmen hiç hoş değil... Sanki kendisi çmez değil... Senin hitap edişin blliki herkezi rahatsız etmiş daha dikkatli ol... Bu arada aslanım Alıntıdır diye eklemeyi unutmuşsun... Bizim evimiz de yok yerimizde... Bizim adımızda da yok derimizde... Her şeyimiz tahribat...

İÇİNDEKİLER 1 Giriş 1.1 Shell nedir 1.2 Shell Scripts nedir? 1.3 Shell Scripts ler niçin kullanılır? 2 Tek satırcılar 2.1 Ynlendirme 2.1.1 Dosya Tanımlayıcılar 2.1.2 Basit ynlendirme 2.1.3 Lots of Files! 2.1.4 Çıktıya Bağlanma 2.1.5 Ekler 2.2 Koşullar 2.3 Çevresel değişkenler 2.4 Quotes, Strings, and Expansion 2.4.1 Wildcards 2.4.2 The Tilde 2.4.3 listeler 2.4.4 Değişkenler 2.4.5 Quotes 3 Story Problemleri 3.1 Dngüler 3.1.1 For dngüsü 3.1.2 While ve until dngüleri 3.2 More Variables 3.2.1 Sayılar 3.2.2 Daha iyi string manüplasyonu 3.3 koşullar 4 Gelişmiş komutlar 4.1 n tanımlı değişkenler 4.1.1 sayılar 4.1.2 Dinlenme 4.1.3 Diziler 4.2 n tanımlı fonkisyonlar 4.3 Fonksiyonlar 5 Scriptlerin tesi 5.1 Readline güzelliği 5.2 Unix araçları 5.3 Ayar dosyaları 6 rnekler 6.1 Background u değiştirme 6.2 Mesajlarınızı kontrol 1 Giriş Bu dokuman kabuk programlamayı tanıtım yazısıdır. Bu eksiksiz veya güvenilir bi kaynak anlamına gelmez ama aynı ifade ile ben ne hakkında konuştuğumun da oldukca farkındayım.. bu dokumandaki tüm rnekler aksi belirtilmedikçe bash syntax ı kullanır. Eğer burda bir script den bahs edersem bu scripti dokumanın sonundaki rnekler kısmına eklemeye çalışacağım. 1.1 Shell nedir? Pek çok bilgisayarda komut satır arayüzü vardır. Bundan dolayı siz pek çok bilgisyarda komut satırı denen bir pencere açıp bilgisayardan yapmasını istediğiniz şeyi, komut şeklinde yazarbilirsiniz. Açtığınız her pencerede sizin yazdıgınız her karakteri okuyup bilgisyarın donanımının anlayacağı gerçek komutlara çeviren bir program çalışır. Işte bu programa komut çevirici veya shell denir. DOS shell olarak command.com kullanır. Unıx sitemlerde pek çok shell var. 1.2 Shell Scripts= Kabuk Programı nedir? Shell script shell de çalıştırılmak üzere komutlar topluluğu içeren bir text dosyasıdır. Bunu basit bir rneği windows. bat dosyasıdır. Gelişmiş shell ler bir script dosyasının içindeki daha fazla karmaşık veya uygun komut topluluğu nu destekler. Pek çok durumda bu script dosyasının içeriği komut satırına yazılabilir ve sonuç çalışan script le aynı olabilir. Unix sistemlerde pek çok shell ortaya çıktıkdan beri scriptler bu shell lerden herhangi biri ile yazılabilir. Ve her shell farklı syntax ve farklı yeteneklere sahip oldugundan beri her shell scripti doğru davranış gsterebilmesi için hangi shell de yorumlanacağının tanımlanması gegekmektedir. Bu tanımlam script in ilk satırında yapılır. Dosyanın ilk satırı şu şekildedir. Shebang ve shell in tam adresi. . Stanadart bir rnek şu şekildedir. #!/bin/bash det olarak hash işareti C++ deki // a benzer olark açıklama yapmak için kullanırlır. 1.3 Shell Script ler niçin kullanılır? Bazıları shell scriptlerine baktıklarında "hey bu başka bir programlama diline benziyor. Kullandığım programlama dili ile aynısı nı yapabilirim " derler. Ve pek çok şeyi yapabilirle ama ss basit grevleri kolayca yapmaktadır. rneğin siz resimlerin bulundugu bir klasre bakıp, onlardan birini rastgele seçen ve onu desktop resmi olarak atayan bir program istediniz. Bunu yapması için bir c porgramı yazmalısınız. Bundan dolayı çeşitli sistem api larını kullanmalısınız, sonra desktop resim ayarları için Xwindows apilerini ğrenmelisiz. program hatalarını temizlemelisiniz, derlemelisiz ve sonrada bugları arayıp durmalısınız. Veya X ile gelen nceden yapılmış araçları kullanan 5 satırlık ss yazarsınız ( eger fantezi yaparsanız 12 satırlık da olabilir. ) Eğer mesajlarınıza bakmak ve bilgisayardan belli bir kritere gre sınıflandırılmış 5 mesajınızın kopyasını size email ile gndemesini isterseniz, var logmesajı açan ve yazdığınız algoritma ile kriterler mesajları bulan, onları sayısını alıp memory e kaydeden, sonra tcp portu acıp mail server ınıza bağlanan ve smtp ile mesajlarınızı gnderen ve açtığı portu kapayan bir C programı yazmalsınız veya for dngüsü grep wc sort kullanan ve sonuçları sendmail e yollayan 7 satırlık ss yazarsınız zetle ss yazmanın arkasında nokta sadece aynı komutları, defalarca tekrar tekrar yazmadan ve yüzüncü kez çalıştırdığınızda yazım hataları için endişelanmeden tekrar tekrar çalıştırabilmek değil fakat tekerleği yeniden keşfetmek yerine unixle gelen pek çok kullnılışlı aracı kullanmak tır. 2 Tek Satircilar ss ler tek satırda pek çok şaşırtıcı şey yapabilri. hernekadar unix sistemlerde pek çok ss, 1 tane shell tanımlayıcı satır birde komplex komuttan oluşan toplam 2 satır dan da oluşsa siz onların gerçekk ss olup olmadıgını tartışabilirsiniz ama onlar herhalükarda bilinmesi güzel şeyler. 2.1 Ynlerdirme 2.1.1 Dosya tanımlayıcılar Unix program lar çalıştırıldıklarında 3 dosya tanımlayıcı açılır. bunlar stdin stdout ve stdserr olarak isimlendirilirler. pek çok komut satırlı program ınputları stdin den okur hataları stderr a yazar ve diğer tüm şeyleri stdout a yazar. her dosya dosya tanımlayıcısının bir sayısı vardır. Bunlar Stdin ki 0, stdout ki 1, stderr ki 2 dir. 2.1.2 Basit Ynlendirme Çok kullanışlı unix araçlarından biri sort dur. sort ınputları stdin den alır onları sıralar ve sınıflanmış formlar lar şeklinde stdout a yazar. Sıralanacak kelimlerden oluşan bir dosyanız oldugunu sylerseniz shell kullanarak sort ile yapabilrisiniz. sort < bu dosyanın içeriğin sıralanmış şekilde çıktı verir. aynı zaman da siz komutun sonucunu baska bir dosyaya da ynlendirebilirsiniz. sort < > file. sorted ynlendirmenin sırası genellikle çok nemli değildir. Şu şekilde de yapailirsiniz sort > file. sorted < sadece stdout u ynlendirdiğinize dikkat edin bundan dolayı stderr hala terminal de duruyor. eger siz strerr u da baska dosyaya ynledirmek isterseniz ( numarası 2 idi ) sort < > file. sorted 2 > file. error 2.1.3 LotsofFiles=dosyaların hepsi?! Shell ile dosya okuma veya yazmak dan başka, tanımlayıcının alacağı numarasını belirtmek koşuluyla yeni dosyalarda açabilirsiniz. Meraklıysanız işte rnek: sort < > file. sorted 2 >file. error 3> file.3 4 < 2 2.1.4 Sonuçların Birleştirilmesi Sonuçları birbirine bağlayabilrisiniz. rneğin stdout ve stderr ü aynı dosyaya yazdırmak istiyorsunuz. : Sort < 1 >&2 > file. out 2.1.5 Ekleme Buna benzer her ynlendirme yaptığınızda file. sorted dosyanızın her seferinde yeni kopyası ile yerdeğiştirdiğini farketmişsinizdir. Eğer bunu istemezseniz basitçe > yerine >> kullanın 2.2 Koşullar komutların / programların çalışması bittiğinde shell e return value denen bir sonuç dndürürler. bu sonuc komutun duzgun çalışıp çalışmadıgını bıldirir. genel bir düşünce olarak bir komutun doğru çalışması ondan nceki komutun doğru çalışmasına bağlıdır. rneğin çalışması gereken nemli bir komutunuz olabilir ve siz bu komut çalışmazsa size email ile bildirilmesini istiyorsunuz veya komutlardan biri çalışmasa da programızınız durmasını istemediğiniz komutlar seriniz olabilir. Bunu yapmanızın yolu return value üzerinden çalışan koşullardır. Koşullar geleneksel boolean operatorleridir. Bazı standart semboller kullanırsınız: || , $$ , ! , ve ; . komutlar kısa devre biçiminde yorumlanır. bundan dolayı a && b komutu a false sonuç dndürürse b çalışmaz fakat a ve b true dndürürse b çalıştırılır. bu komut foo. c dosyasını derliyor ve hata yoksa sonuç dosyasını çalıştırıyor gcc foo. c && ./a. out burda ise foo. c derleniyor ve hata varsa vim ile düzenleniyor. gcc foo. c I vim foo. c siz bu ikiisni birbirine bağlayabilirsiniz. burda hata yoksa calıştıran, hata varsa edit için vim i acan komut bu. gcc foo. c && ./a. out | vim foo. c 2.3 Çevresel Değişkenler İşletim sistemlerinde ki kavramlardan biri de uzun süre nce bulunan çevresel değişkenlerdir. Çevresel değişkenler tüm uygulamalar tarafından okunabilen bir degişken yığınına verilen isimdir. dos prompt'ta veya unix shell'de set yazip enter'a basinca goreceginiz degişkenlerdir. Çevresel değişkenleri şu şekilde atayabilirsiniz. Export HISTCONTROL="ignoredups" Dikkat etmeniz gereken bazısı: HISTCONTROL Bunu ignoredups a atayın ve sonra bana teşekkür edin. PS1&PS2 bu istemciyi ayarlar, kurar. PS1 standart istemcidir, PS2 kapsayıcı yı açık bıraktığında bilgi ister. PS3 de var fakat nadiren kullanılır. PAGER text dosyalarını grmek için varsayılan program. man ı kullanır. Siz pager ı rneğin man sayfalarını grmek için more ve less ile man sayfaları arasında geçiş yaparak da kullanabilirsiniz. EDITOR text dosyaları oluşturmak veya düzenlemk için varsayılan program. Pek çok mail okuyucu veya oluşturucu bu programı kullanıyor. PATH Bir komut yazıldığında onu araştırmak için sütünlara ayrılmış dizinler listesi. Eğer komut bu dizinlerden birinin içindeyse, çalıştırılır. Liste başından sonuna sırayla aranır ve ilk bulunan kullanılır. 2.4 Quotes, Strings, and Expansion 2.4.1 Wildcard, Jokerler Belli olmayan bir veya daha fazla karakterin yerine gecen karakterler bir komuta string ifade ettiğinizde gerçekten değerlendirilmeden nce genellikle bir kaç yolla yorumlanır. rneğin siz şu komutu çalıştırdığınızda ls. txt dizindeki sonu txt le biten tüm dosyalar consol ekranına yazılır. yıldız ilk shell sürümlerinde a joker olarak kullanılırdı. Shell. txt paternini genişletir ve sizin dizininizde 2 tane txt uzantılı dosya varsa ls komutu ls bar. txt foo. txt olarak algılar. 2.4.2 Tilde unix'te kullanıcıların home dizinlerine işaret eden kısayol. web server'larda kullanıcı sayfalarını belirlemek için de kullanılır. aynı zamnda diğer kullanıcı isimleri ile birlikte belirtilen kullanıcını home dizininin yolunu gstermek için kullanılır. ls ostermann/classbin 2.4.3 List listeleri kullanarak bir string in alabileceği değerleri nceden tanımlayabilirsiniz ve bu kısıtlı wildcard gibi çalışır. rneğin: rm foo. foo. aux, foo. dvi, foo. log, foo. pdf, foo. ps dosyalarını siler. 2.4.4 Değişkenler Değişkenler de karakter katarlarında yorumlanırlar. Geçerli çevrenin içeriği tüm değişkenlerdir. bylece ğrenmek için, rneğin PATH değişkeniniz ne? echo $PATH echo $ ikisi aynı fakat 2. si komplike scriptdir ama daha güvenli ve karışıktır. Aynı zamanda kendi değişkenlerinizi şyle tanımlayabilir ve kullanbilisiniz.: FOO=bar echo $FOO 2. satır eger siz echo bar yazsanızda shell tarafında yorumlanır. bunun anlamı siz aynı zamanda şylede yapabilirsiniz: FOO = 'ls -l' $FOO /usr/bin ve siz ls -l /usr/bin yazmışsınız gibi davranır. 2.4.5 Tırnak İşaretleri eger siz açıklamanın standart yapısını değiştirmek isterseniz tırnak işareti kullanarak stirng in içindeki şeyleri gruplayabilirsiniz. 3 tip tırnak var. çift tırnak tek tırnak ve ters tırnak. Çift tırnak string içindeki leri gruplar bylece sizin boşluk içeren bir argumannınız olabilir. Değişkenler, tilde, wildcards ve diğer tırnak tipleri çift tırnak için de kullanılabilir. tek tırnak da çift tırnak gibi string içeriğini gruplayabilir ama tek tırnak içinde başka bir şey yorumlanmaz. Ters tırnak içeriği sanki başka bir komutmuş gibi değerlendirir. kafanız karıştı değil mi? tabloyu inceleyin. Çift tırnak Tek tırnak Ters tınak echo foo > file. txt echo bar >> file. txt THEFILE=file. txt echo "wc l $THEFILE" echo foo > file. txt echo bar >> file. txt THEFILE=file. txt echo 'wc l $THEFILE' echo foo > file. txt echo bar >> file. txt THEFILE=file. txt echo 'wc l $THEFILE' Sonuç: wc l file. txt wc l $THEFILE 2 3 Story Problemleri bylece siz tırnakları değişkenleri wildcardları, ynlendirmeyi anladınız ve dunya ya hakimsiniz. o halde siz bir dizindeki tum dosyaların uzantısını.html yapmak istiyorsunuz 3.1 Dngüler Shell bir kaç çeşit dongüyü destekler. Şimdi bunlardan for while ve until i inceleyelim. 3.1.1 For-Loops 2 tip for dongusu var. c- stil ve list stil. c-stil donguyu rnekle açıklamak kolaydır. for (( I = 1; $I <4; I = $I+1; do echo $I done bu script ayrı satırlara 1 2 3 yazar. C deki for dngüsü gibi 1. kısımda ilk deger atanır. 2. kısımda test edilir. 3. kısımda artış sağlanır. for dngüsünün 2. şekli string i listler içinde shell in yeteneğine bağlı ayrımlaştırmakdır. İşte rnek : for F in ' ls / ' ; do echo $F done shell string i in ve ; arasında ayrıştırır ve liste elemanlarına atar. liste de ki her eleman için F değişkenine listenin her elemanın değeri atanacak ve dngünün içeriği uygulanacak. . shell listedeki kodları bosluk veya yeni satır ile bler. Bundan dolayı bu rnekte dilediğiniz yerde basitçe home dizinindeki her dosyanın isminin çıktısını verir. Eger bu dosyalardan biri isminde boşluk karakteri içeriyorsa, onun ismi blünür ve farklı satıra koyulur. bu rnekte.html uzantısını şu şekilde ekleyebilirsiniz.: for F in ; do mv $F $F.html ; done oh. size sylemedim mi? dngüler tek satır gibi ifade edilebilir. fakat sizinde grdüğünüz gib değişkenlerin adları nasıl karışık. scriptleri şu şekilde yazmak daha güvenli; for F in ; do mv $ $ .html ; done 3.1.2 Whıle ve Until dngüleri bu dngü ondan ne dilerseniz aynen yapar. while dngusu şu şekildedir.: F=1 while ; do F= $ (( $F+1)) echo "Not done yet" done until dngüsü karşılaştırma kısmı hariç aynıdır. 3.2 Diğer Değişkenler 3.2.1 Sayılar siz belkide şimdiden sylediniz ki grdüğümüzden daha fazla shell değişkeni var. Pek çok zaman değişkenlere string gibi davranılır. Bununla beraber bazen sayı gibi de davranırlar. Bir değişkene sayı gibi davranmak için onu çift parantez içine alırız. rneğin üsteki rnekte F=$(($F+1)) . Değişkenler aynı zamanda bir unix aracı olan test tarafından işlenincede sayı gibi davranırlar. Not: test işaretleri arasında yazılır. Eğer test in dogru yazımını ğrenmek isterseniz konsol da man test yazıp bakabilirsiniz. 3.2.2 Daha iyi string manuplasyonu Malesef shell stringleri ile işlem yapma yeteneği kısıtlanmıştır. İyiki aynı etkıyı almak için standart unix araçlarını kullanabilirsiniz. İsimlerinde boşluk olan dosyaları alıp bu boşlukları alt çizgi ile değişmeniz gerektiğinde ne dersiniz burda sed e grev düşüyor. . şyle bir şey yapabilirsiniz. : for F in ; do mv $F 'echo $F | sed 's / / _/g' ' done benzer olarak eğer ss ile kendi ip nizi bulmak isterseniz, awk ı kulanbilirsiniz. awk genel olarak sadece boşlukla blümlenmiş text stringleri tanımlamak için kullanılır. cut ile beraber kullanıldığında şyle birşeyler yapabilrisiniz.: MYIP= '/sbinz/ ifconfig eth0 | grep " inet addr:" awk ' ' | cut d: f2' 3.3 Koşullar 2 temel koşul var. . ilk ki if. nasıl kullanıldığını anlamak çok kolay dır ama syntax I biraz gariptir. Nasıl çalışıyor bakalım. if ; then echo "Equals One" elsif ; then echo "Equals Two" else echo "Equals Neither" fi if deyiminin kapanışı if in tersten yazımı şeklinde olduguna dikkat edin. Case deyimi de aynı şekildedir. If ile aynı iş yapan case deyimi syledir. case "$F" in "1") echo "Equals One" ;; "2" ) echo "Equals Two" ;; ) echo "Equals Neither" ;; esac 4 Gelişmiş scriptler. Henüz make komutunu ğrenmediğinizden. tex dosyalarını. pdf dosyasına ve. LATEX dosyalarınızı. dvi. ps ve. pdfs dosyalarına manuel derlemeyi deneyebilirisiniz. Bunun için 2 seçeneğiniz var. Şiddetle tavsiye edilen make komutunun ğrenmek veya ss yazmak. LATEX: genellikle unix tabanlı işletim sistemlerinde kullanılan, bir text editrü. Metin işleyici. en nemli farkı ve çok fazla kullanılmasının sebebi, formul, şekil gibi microsoft word vb. kullanarak yapılması çok zor olan şeylerin çok daha kolay oluşturulabilmesidir. zellikle formullerin sadece klavye kullanarak bir kaç basit işaretle oluşturuluyor olması çok hoş. word gibi programlarin aksine 'what you see is what you get' olmayan word processor. yazdiklarinizi compile edip dvi yapar sonra da postscript olarak gorursunuz. formati belirleyen siz degil kullandiginiz style veya class dosyasidir. dolayisiyla formatin disina cikmamaniz garantiye alinmistir. bir de scientific workplace gibi kolaylastirilmis cesitleri bulunur, profesorler de guzel guzel paper ve kitap yazsinlar diye. 4.1 n tanımlı değişkenler 4.1.1 Sayılar Ss text dosyalarında executable bit tanımladığınızda normal program gibi çalıştırılabililir. Normal program gibi arguman veribilebilir. Sayılar değişkenleri $0 $1 $2 vs şeklindedir. Bir ss de $0 ss ismini belirtir. $1 birinci argumana denk gelir. Eger arguman yoksa değişken birşey içermez. make problemini çzmek için bu scripti yazmalıyım #!/bin/bash latex $1. tex && dvips -o S1. ps $1. dvi && ps2pdf $1. ps Eğer ben bu scripti latexit olarak adlandırırsam ve kendi dosya yoluma koyarsam latexit foo komutu ile foo. tex dosyasını foo. pdf ye derleyebilirim. executable bit unix'te bir dosyanın zelliklerinde executable olup olmadığını tutan bit owner, group ve herkes için üç adet bulunur 4.1.2 Dinlenme Pek çok n tanımlı değişken vardır. Işte onlar: $ Standart olan bu komut satırı parametrelerinin tümünü belirtmek ve/veya kullanabilmek amacıyla $@ Standart olan bu komut satırı parametrelerinin tümünü belirtmek ve/veya kullanabilmek amacıyla boşluklar la blümlenmiş şekilde genişletir. $# Komut satırı parametreleri sayısını ğrenme $? En son icra edilen komutun dnüş kodunun elde edilmesini sağlar. $$ SHELL deki PID leri verir. $! Son komutun PID ini verir. $_ Bu da tam dosya ismini veya son çalışan komutun son argumanını verir. 4.1.3 Diziler Sanırım daha nceden bahsetmediğim değişkenler diziler olabilir. FOO =bar echo $ 4.2 n Tanımlı fonksiyonlar. Shell de yüzlerce yazılmış n tanımlı fonksiyon vardır. Eğer onları hatırlamak istersenız man sayfalarını okuyun. Bunlardan benim en fazla kullandığım ikisi read unset ve eval dir. Bunlar diğer dillerideki ne benzer şeyler yaparlar. Kabuk programları içerisinde kullanımı sz konusu olan değişkenlere okutma yolu ile değer atama işleminin yapılmasında "read" ile yapılır. Çalışan kabuk programları içerisinde kullanımı sz konusu olan ve herhangi bir değeri bulunan ve/veya bulunmayan bir değişkeninin tanımının silinmesi işlemi, "unset" komutu yardımıyla yapılır. Sistem komutlarının ve/veya programlarının doğrudan kullanımı sz konusu olduğunda, "eval" komutu da kullanılabilir. 4.3 Fonksiyonlar Kendi fonksiyonlarınızı tanımlamak oldukça eğlencelidir. Bunu açıklamanın en kolay yolu rnekle anlatmaktır. function add_to_path { INPATH=0 for F in 'echo $PATH | sed 's/:/ /g' ' ; do if ; then INPATH=1 break fi done && PATH="$PATH:$1" unset INPATH 5 Scritlerin tesi Bu blümde shell ve komut yazma ile alakalı pek kimsenin bilmediği ama hayatlarını daha kolaylaştıracak küçük bilgilerden bahs edilmekte. 5.1 Readline Güzelliği Bir zamanlar bir unix hackerı shell de script yazarken bir hata yaptı . backspace tuşuna bastığı zaman consol pencersinde H yazdığını grdü. Bu hackerı oldukça üzdü ve yn tuşlarıyla geri gidip komutu düzeltmeyi denedi. Komutlarını sıfırdan tekrar yazarken bunu nleyecek şeyi çzdü. scriptini tamamladıkdan sonra bir kütüphane dosyası yazdı. bir libreadlien oluşturdu ve güzeldi. Libread line terminal den okuyan bir kutaphane dosyasıdır. Komutları hafızasında tutar. Yn tuşlarıyla nceki komutlarınızı grebilirsiniz. Komutlarınızı yn tuşlarıyla düzeltmenizi sağlar. Tab tuşuyla komutlarınızı tamamlamanızı sağlar. standart emacs veya vi komutlarını kullamanızı sağlar. 5.2 Unix araçları Bu liste Matt Hyclak ın listesinden dünç alınmıştır. Bu liste deki komutları bilmeniz gerekmektedir ve bunlar eğer ss de pek çok şeyi yapabilmeniz için oldukça kullanışlıdır. Awk Komutların çıktılarındaki bilgiler üzerinde değişik uygulamaların yapılmasını sağlayan bir komutdur. Cat Stdin ve herhangi bir dosyayı alır ve onları stdout a aktarır. Cut Bir dosyanın herbir satırında yer alan byte ların, karekterlerin veya alanların kesilerek grüntülenmesini sağlayan komut Date gerçek zamanı ve tarihi yazar. Diff 2 palintext unix dosyası arasındaki farkı bulur. Echo terminalde bir karakterin ekranda gorunmesi i$lemi Find Aradığınızı bulmayı sağlar. Grep Metin dosyasında/dosyalarında bir kalıp dizgisinin aranmasını sağlayan komut Less Unix'te stdin'den gelen file'i sayfa sayfa gosteren komut.. Locate Find dan daha iyi bir bulucudur. Eger siz bir dosyalarınız için endişelenirseniz locate periodik olarak tüm dosyalarınızdan oluşan bir database oluşturur ve arama zamanını son derece azaltır. lynx or links consol da çalışan bır web browserdır. X in çalışmadığı zamanlara eğer bir referansa ihtiyacınız varsa lynx sizi kurtarır. Links lynx den biraz daha iyidir. Man unix in el kitabıdır. Script için kullanışlı değildir ama bür komutları ğrenemediyseniz bunu bari ğrenin. More standart unix pager ıdır. stdin'den gelen file'i sayfa sayfa gosteren komut Printf echo dan biraz daha iyi. i yeni satır a dnüştürür. Ps sistemde çalışan uygulamaları listeler. Sed stream editor.. unix'te bir gui'ye sahip olmayan command line parameter'larla calişan text editor Sort Metin tabanlı dosyaların sıralanmasını sağlayan komut Test Ifadeleri test için kullanılır ve 1 veya 0 değerini dndürür. We Bir dosya hakkına karakter sayısı satır sayısı toplam kelime gibi istatistik verir. Which Bir komutun tüm dosya yolunu gsterir. who/w Sistem deki kullanıcıları listeler. Xargs bir komutun icrası sonucu oluşan ekran çıktılarının bir başka komut için giriş parametresi olarak kullanılmasına olanak sağlayan 5.3 Konfigürasyon dosyaları Ne oldu tahmin edin. config dosyaları küçük birer ss leridir. onların kısıtlı alanı yoktur. shell tarafından direk çalıştırılabilir. ve alt shell tarafından çalıştırılamaz. Bana inanmadınız mı? #. bashrc if ; then. /. bash_profile fi # shell info PS1="/dev/null << " PS2="<< " #User specific aliases and functions alias ls= 'ls color' alias lsl= 'ls color -lh' alias quota= 'quota -v kwheeler' export PATH=$PATH: /usr/ccs/bin Gayet ustaca değil mi? 6 rnekler 6.1 Desktop arka resmini değiştirme X ortamında ki background resmini resim klasründen rastgele bir resim ile değiştirir. #!/bin/bash PICTURES=/home/kyle/bgs COUNT='ls $PICTURES | wc -l' WHICH=$ WHICH=$((WHICH+1)) COUNT=0 for F in $PICTURES / ; do COUNT=$((COUNT+1)) if ; then Esetroot "$F" break fi done 6.2 Mesajları kontrol etmek Bunu niçin yapmak istediğiniz hakkında fikrim yok ama bunda blüm 1.3 de bahsetmiştim. işte o kodlar: #!/bin/bash PATTERN="FAILED" while true; do if ; then printf 'To: me@foo. gov Stuff Went Bad!' | /usr/sbin/sendmail -t fi doneçalıntıdır... bu hayatin taaaaa a. q.

arkadasım bende yeni sayılırım ama nüme ne gelirse okuyorum cok şükür kapıyozda bişiler. emegine sağlık kardesim

arkadaşlar gereksiz konuları nie bu kadar uzatıyoruz, burada paylaşım yapıyoruz...

Foruma sırf yazmış olmak için Yüzlerce sayfalık dkümanlar paste etmeniz hayırlı sonuçlar doğurmaz, bunun yerine yazının kaynağına link veriniz yada Net üzerinde yoksa ve faydalı olacağına inanıyorsanız sizin adınızla Dküman arşivi blümüne koyulmak üzere bana maillayınız. http://www.tahribat.com/forumabout. asp Umursamaz Tavrımın Hastası Olunuz.

http://www.tahribat.com/forumdisplayfolder. asp?highlight=&folderid=27030 aynı halt benim basımada geldi bu ne ya cmez EZİN bilmiyosam duzelt yardımcı ol :(

Kokainman:)))) Nerede Olursan Ol Dünyadasın Sen

Mesaj FaTaL_PC tarafindan 18 Haziran 2006 tarihinde yazildi. çmez diene hackledıgın sıte kac tane desem 1 bıle yoktur :) Hmm çmezlii geçmek için sitemi heykırlamak gerekiyo? . Şahsen benim benim hiç yle bi eylemim olmadı isteğimde olmadı. Ben çmezmiyim? hadi ordan seksi!

valla beni adam sansınlar diye yaptığım bişey yok, sadece bilenler nasıl biri olduğumu bilir, maksat yeni başlayanlara yardım. Boşa laf üreteceğimize çalışsak, kstek olacağımıza destek olsak çok daha iyi olur. Daha sonra da katkı yapmıyor çmezler a. q. tahrikeyi başlatın diyip kestirip de atarsın. bu hayatin taaaaa a. q.

shell 'e gelene kdr daha grenicek çok şeyleri war bnce buda zamanla olr foruma yazmış olmak için yazmayn ilk nce bi ortamı analiz edin unutmayn hepimiz bi zmnlar çmdük yavaş yavaş kendimizi tarikata kabul ettirdik...