Kabuk (SHELL) nedir? Nasıl Kullanılır?

Başlatan sidious, 12 Ağustos 2008 - 03:26:05

« önceki - sonraki »

0 Üyeler ve 3 Ziyaretçi konuyu incelemekte.

sidious

Ubuntu konusunda henüz yeniyim ancak elimin altındaki kaynaklardan yardım alarak böyle bir derlemenin yararlı olacığını düşündüm. Hatamız varsa affola.. ;)

Shell (Kabuk) nedir?
Lİnux'un türetildiği UNIX sistemlerinde komutları yorumlamak ve yönetmek için kullanılan programa kabuk denir. Bir başka değişle bilgisayar ekranımızın yönetimini pencereler ve simgeler ele geçirmeden önce bilgisayarlarımızı çalıştırmak için kullandığımız komutları yazdığımız bir tür paneldir.

Bütün LINUX dağıtımlarında bir kabuk bulunur. Bir başka değişle Kabuk bir LINUX sistemin olmazsa olmazıdır.

Peki kabukla ne yapabiliriz?
Programları, Dosya sistemlerini çalıştırabilir, Bilgisayar kodunu derleyebilir, Bir sistemi işletebiliriz. Kısacası bilgisayarımızı en etkili şekilde yönetebiliriz.

Kabuk yaygın kullanıcı arabiriminden (GUI) daha az sezgiseldir. Ancak doğru komutlar ve ne yaptığını bilenler için GUI den çok daha etkili kullanılabilir. Bu noktadan baktığımızda Kabuk basit şekliyle bir komut dili yorumlayıcısıdır.
Microsoft işletim sistemlerindeki DOS komutlarını çalıştırabilmek için kullandığımız yorumlayıcıya ( cmd.exe) benzer. Fakat çok daha etkilidir. Şöyleki; Microsoft işletim sistemlerinin kendine has bencilliğini çoğu zaman farketmesek de sistemimizi sınırlı bir çerçevede kullanmamıza müsade eder.

Kabuk ise LINUX'u LINUX yapan en temel etmendir. Kabuk yardımıyla işletim sistemimizin çekirdeğine kadar etkiyip, sistemimizi kendi ellerimizle yapılandırabiliriz.

Kabuğumuzun Yorumlayıcısını Açmak...
Artık nerdeyse bütün LINUX dağıtımlarında GUI ile kabuğa geçişimiz kolaylaşmıştır. LINUX sistemimizde Kabuğumuzu başlatmak için 2 yol kullanabiliriz.

Birincisi; Görünen kısayol menüsünden Shells (Kabuklar), New Terminal (Yeni Terminal), Terminal Wİndow (Terminal Penceresi) Xterm veya benzer komutları ararız.

İkincisi; Panel menümüzü kullanırız. Örneğin UBUNTU'muzda Terminalimizi çalıştırmak için Application>Accessories>Terminal ( Ubuntu Türkçe versiyonunda; Uygulamalar>Donatılar>Uçbirim) yolunu kullanırız.

Bütün durumlarda artık GUI mizden bağımsız olarak kabuğumuzu kullanacağız. LINUX'de farklı terminal emülatör programları mevcuttur. Bunlardan bahsedecek olursak;

xterm: X Wİndow sistemi için genel bir terminal emülatör programıdır. Menüleri bulunmaz.
gnome terminal: GNOME ile gelen varsayılan Terminal emülatör programıdır. xterm'den daha fazla sistem kaynağı tüketir. Buna rağmen terminal sekmelerini veya pencerelerini açabilir, kesebilir, yapıştırabiliriz ve terminal profillerini ayarlayabileceğimiz yararlı menüler barındırır.
konsole: KDE masaüstü ortamıyla gelen emülatör programıdır. konsole ile çoklu dil metin kodlamasını ve metnini farklı renklerle görüntüleyebiliriz.

Terminal penceremizi açtığımızda karşımıza ilk gelen çıktı aşağıdaki gibidir.
kullanıcıadı@bilgisayaradı:~$

İlk olarak kullanıcı adımız belirtilmiştir. @ (amphora)'dan sonra gelen kısım bilgisayar adımızı belirtir. ~ (tilde) işareti ise o anda bulunduğumuz dizinin yerine kullanılmıştır. eğer /usr adındaki dizinimizi açmış olsaydık ~ yerine /usr yazacaktı.
kullanıcıadı@bilgisayaradı:/usr$
gibi...
en son karakter ise açılmış olan hesabımızın yetki seviyesini belirtir.
Ayarlarla oynanmadığı müddetçe genel olarak $ (dolar) işareti karşımıza çıkacaktır. $ işareti normal bir kullanıcı için varsayılan işarettir. bir diğer adıyla sınırla kullanıcı oturumunda bulunduğumuzu gösterir.
# (hash) ise diğer adıyla diyez, kök kullanıcı (root) için varsayılan işarettir.
Buna karşın istediğimiz herhangi bir karakteri görüntülemek için istemimizi değiştirebiliriz.

Acaba hangi kabuğu kullanıyorum?
Hangi kabuğu kullandığımızı anlamak için terminal penceremizde
echo $SHELL
yazalım.
not: Kabuk komutlarımız büyük küçük harf duyarlıdır. bir komutu yazdığımızda istediğimiz çıktıyı alamadıysak meta karakterlere, boşluk bırakıp bırakmadığımıza ve de komutların tam karşılığı olacak şekilde büyük küçük harflere dikkat edip komutu tekrarlayalım.

Yukardaki komutumuzun çıktısına kendi sisteminden örnek verecek olursam;
kullanıcıadı@bilgisayaradı:~$ echo $SHELL
/bin/bash


anlaşılacağı üzere bash kabuğunu kullanmaktayım.

Peki nedir Bash kabuğu ve Başka kabuklar varmı?
Tam bir sayı verememekle birlikte oldukça fazla kabuk mevcuttur. Fakat genelde kullanılan kabuklardan bahsedelim.

bash (eskiden sh) Kabuğu:
Bash  kabuğu ilk UNIX sistemlerinde hem sh ve ksh kabukları, hem de bazı csh özellikleri için orjinal olarak geliştirilen özellikleri içerir. Çoğu LINUX sisteminde varsayılan kabuktur.
Her kabuğun kendine özgü programlama dili yapısı vardır. Bash kabuğu ise güçlü programlama özellikleriyle karmaşık programların rahatça yazılmasına izin verir. Mantıksal operatörler, döngüler, değişkenler ve modern programlama dillerinde bulunan pek çok özellik bash kabuğunda da vardır ve işleyiş tarzları da hemen hemen aynıdır.
Bash çeşitli uyumluluk kiplerinde çalıştırılabilir, böylece farklı kabuklar gibi davranabilmektedir. Örneğin bir Bourne kabuğu (bash +B) veya bir POSIX uyumlu kabuk (bash --posix yazın) olarak davranabilir. Bu şekilde adı geçen kabuklardaki onlara özgü konfigürasyon dosyalarını okuyabilir, doğrudan bu kabuklar için yazılmış olan kabuk script lerini çalıştırabiliriz.

Not: LINUX sistemlerde defalarca yazmanın zor olacağı karmaşık işlemleri çok hızlı gerçekleştirmek için döngüler ve case deyimleri gibi programlama yapılarını kullanarak komutları bir dosyada bir araya getirebiliriz. İşte bu sebeple bir dosyada toplanan ve çalıştırılan komutları içeren programlara kabuk scriptleri denir.

tcsh (eskiden csh) Kabuğu:
C Kabuğunun (csh) açık kaynak versiyonudur. Bu kabuk çoğu Berkeley UNIX sistemlerde varsayınlan kabuk olarak kullanılır. Bu kabukla birlikte dahil edilen TENEX ve TOPS-20 işletim sistemlerinin özellikleri tcsh içindeki T'den sorumludur. Orjinal csh kabuğunun komut satırı düzenleme ve geçmişin işleyişi gibi özelliklerin çoğu hem tcsh'te hem de diğer kabuklarda bulunan bir özelliktir. bir başka değişle gerçekte csh kabuğunu başlatmak csh uyumlu kipte tcsh kabuğunu başlatmaktır.

ash Kabuğu:
UNIX sh kabuğunun ufak bir versiyonudur. sh kabuğunun çoğu özelliğini barındırmaz. komut geçmişleri gibi...
ash kabuğu daha az sistem kaynağına sahip gömülü sistemler için güzel bir kabuktur.  bash kabuğunun boyutunun yaklaşık yedi de biri kadar bir boyutu vardır. (bash kabuğu yaklaşık 712k'dır.ask kabuğu ise 100k'lık bir boyuta sahiptir).

ksh Kabuğu:
ksh kabuğu sh kabuğunun atasıdır. UNIX V sistemlerin varsayılan kabuğudur. ksh'ın açık kaynak versiyonu pdksh paketinin bir parçası olarak çoğu rpm tabanlı sistemde orjinal olarak bulunur.

zsh Kabuğu:
zsh kabuğu ise sh kabuğunun klonlarından biridir. POSIX uyumludur (bash gibi). ancak yazım denetimi ve komut düzenlemeye farklı yaklaşım gibi özellikler içerir. ilk Mac OS X sistemleri zsh kabuğunu varsayılan kabuk olarak kullanmıştır. ancak şuanda varsayılan kabuk bash kabuğudur.

Buraya kadar yazdıklarım Kabuğun ne olduğu? Sistemimizde var olan kabukların neler olduğuve vs ile alakalı kısa bilgiler içermekte.

Kabuğumuzu kullanmamızı sağlayan komutlar nelerdir? ve komutlarımızı nasıl kullanırız?
Kabuğumuzu kullanırken yazdığımız komutların yanı sıra, bu komutların çalışmasını etkileyecek veya çalışmasına ekleme yapacak karakterlerde kullanırız.

Öncelikle komutun seçeneklerini nasıl kullanacağımızdan bahsedelim. Çoğu komut davranışlarını değiştirmek için ekleyebileceğimiz bir ya da birden çok seçeneğe sahiptir.

Peki bu seçenekleri nasıl kullanırım?
Öncelikle; bir komutun ne işe yaradığı, alt seçeneklerinin ne olduğu gibi bilgileri öğrenmemiz gerekmektedir. bunun için UBUNTU da man komutunu, LINUX sistemlerin genelinde ise --help komutlarını kullanabiliriz.
örneğin who komutu için terminal penceremizde bir sorgu yapalım.
Penceremizde;
man who
veya
who --help

yazalım ve ekrana gelen çıktıyı inceleyelim (man sudo yazdığımızda karşımıza gelen çıktıdan q tuşunu kullanarak çıkabiliriz). Gelen çıktıda bize o komutun seçeneklerini nasıl ve hangi parametrelerle kullanacağımızı anlatmaktadır.
Seçeneklerimizi kullanmak için komutumuzu yazıp boşluk bırakır, uygulayacağımız seçeneği önüne - (tire) koyarak kullanırız.
Örnek verecek olursak Terminal penceremizde who -u komutunu sorgulayalım,

user@bilgisayaradı:~$ who -u
user tty7         2008-08-12 13:56   .          5967 (:0)


who komutu ile user adlı kullanıcının tty7'de (xwindow= X Window, pencerelerin ekranda nasıl görüntüleneceğini sağlayan, fareyi denetleyen, çekirdek (kernel) ile kullanıcı arasında durarak ekran kartları için bir sunucu görevi yapan programdır) oturum açıldığınıve oturumun 2008-08-12 tarihinde saat 13:56 da başladığını, 5967 nolu PID (kullanıcı oturum kabuğunun proses ID'si) numarasını ve (:0) ise terminal penceresi kullandığımızı göstermekte.

eğer bir komutla birkaç seçeneği birleştirip sorgulama yapmak istiyorsak komutlarımızın seçeneklerini teker teker ya da ayrı ayrı girmemizede gerek yoktur. tek bir - işaretinden sonra birden fazla seçeneği birlikte kullanabiliriz. terminal penceremizden who -uH komutunu girelim.

user@bilgisayaradı:~$ who -uH
NAME     LINE         TIME             IDLE          PID   COMMENT
user     tty7     2008-08-12 13:56       .          5967    (:0)


burada who komutuna -u seçeneği ile boştaki zaman bilgilerini, -H ile de sorguladığımız çıktının başlıklarının yazılmasını (NAME, LINE, TIME gibi) talep ettik.

Seçeneklerin haricinde komutlarla birlikte Argümanlar, Ortam değişkenleri ve Meta karakterler kullanırız. Bunları kısaca özetleyecek olursak.

Argümanlar nedir? Nasıl kullanılır?
Çoğu komut belli seçenekler girildikten sonra veya komut satırının sonunda argümanlar kabul eder. Bir argüman, komut tarafından kullanılabilecek bir dosya adı gibi ekstra bilgi parçasıdır.
Örnek verecek olursak;

cat /etc/passwd

girdisi /etc/passwd dosyasının içeriğini görüntüler. burada cat görüntülemeyi sağlayan komuttur. /etc/passwd ise etc klasörü içindeki passwd argümanıdır.

Ortam değişkenleri nedir? nasıl kullanılır?
Kullandığımız kabuğumuz (hangi kabuk olursa olsun) ortam değişkenleri olarak adlandırılan kullanıcının kabuk prosesine yardımcı olabilecek bilgiyi depolar. Bir başka değişle etkin bir kabuk kullanması gereken bilgi parçalarını ortam değişkenlerinde depolar. Bir ortam değişkeni konfigürasyon dosyalarımızın konumunu, posta kutularımızı, yol dizinlerimiz gibi bilgileri depolar. Ayrıca kabuk istemlerimizi, geçmiş listemizin boyutunu ve işletim sistemimizin tipi için değerleri depolayabiliriz.
Ortam değişkenimiz hakkında bilgi almak için terminal penceremizde declare komutunu girelim (liste fazla uzun olacağından ve penceremizden taşacağı için declare |more komutunu girebiliriz).
declare komutunu incelediyseniz ekrana gelen kodlar bir çok kişiye bir şey ifade etmeyebilir. (henüz bende orda yazanları tam olarak yorumlayacak bilgiye sahip değilim :))
Ortam değişkenlerimizi temel olarak bu şekilde açıklayabiliriz. Ortam değişkenimizi yapılandırmak, değiştirmek gibi ileri düzey kullanımlara daha sonra detaylı olarak değineceğim.

Meta karakterler nelerdir? nerelerde kullanabiliriz?
Kabuk için özel anlamı olan karakterlerdir. Kabuğumuzu hızlı ve verimli kullanmak için bash kabuğu meta karakterler ve operatörler olarak bilinen belli özel karakterleri kullanmamızı sağlar. Bu karakterlerle mesela bir veya daha fazla dosyayı her bir dosyayı tamamen yazmadan eşleştirebilmemize yardım eder. Operatörler bir komut veya dosya bilgisini başka bir komut veya dosyaya yönlendirmemizi sağlayabilir.

Bazı karakter örnekleri verelim.
-Bir komutun çıktısını bir dosyaya yönlendirmek için > karakterini kullanabiliriz.
Terminal penceremizde;
user@bilgisayaradı:~$ who -uH > /home/user/Masaüstü/newfile
Örneğimizde who -uH çıktımızın sonucunu masaüstümüzde bulunan newfile metin belgemizin içine aktardık. Komutu bu şekilde yazdığımız zaman newfile metin belgemizin içinde yazılı olan ne varsa silinip, içerisine who -uH komutunun çıktısını yazarız

-Çıktımızı bir başka komuta iletmek için | karakterini kullanabiliriz.
Terminal penceremizde;
user@bilgisayaradı:~$ declare |more
Örneğimizde ortam değişkenimizi görüntülemek için kullandığımız declare komutunu sayfa sayfa açmamızı sağlayacak more komutuna ilettik. ve sonuç olarak declare komutunun çıktısının ekrandan taşması nedeniyle göremediğimiz kısımlarını more komutu ile bir nevi pause yapıp manuel olarak görüntülemiş olduk.

-Arka planda bir komut çalıştırmak için & karakterini kullanabiliriz.
Terminal penceremizde;
user@bilgisayaradı:~$ find /usr/bin &
komutunu girelim. /usr/bin dizini altındaki dosyalarımızı sorguladık ve & komutu ile ekranımızda gelen son satıra arka planda çalışmasını istediğimiz programı yazarız. **Arka planda çalışamasını istediğimiz programı çoğu zaman terminal penceremizde sadece adını yazarak da çalıştırabiliriz. ancak burda amaç yaptığımız sorgulama ile /usr/bin klasörü altındaki komutları görüntüleyip ordaki komutları çalıştırabilmekti**

Buraya kadar geldiğimiz noktayı özetlersek; kullandığımız ya da kullanacağımız komutların seçeneklerini kullanarak istediğmiz şekilde sorgulama yapabilme, komutlarımızı seçeneklerine bağlı olarak çalıştırabilme, kısacası komutumuzun davranışını değiştirebilme,

Argümanları görüntüleyip, içeriği hakkında bilgi edinebilme,

Ortam değişkenimizi yapılandırarak kabuk prosesimize yardımcı olacak bilgileri depolayabilme,

Meta karakterler kullanarak çıktılarımızı yönlendirme, bir başka komuta iletebilme, arka planda komutlar çalıştırabilme konularında biraz fikir edinmiş olduk.

Peki genel olarak bu konular hakkında sistemimden nasıl yardım alabilirim?

Kabuğu ilk kullanmaya başladığımızda (yeni başlayan ya da pek fazla deneyimi olmayanlar) için Terminal  oldukça korkutucu görünebilir. Aslında tüm gördüğümüz bir istemdir. Ve bu konuda sadece sistemimiz bile bize fazlasıyla yardımcı olmaktadır. Söz konusu yardımı ise;

PATH komutuyla;
echo $PATH
yazdığımızda doğrudan erişebileceğimiz komutların listesini görüntüleriz.

İlgilendiğimiz komutu yazıp boşluk bırakıp --help komutunu kullanabiliriz. Çoğu komut, komutun nasıl kullanıldığı hakkında bilgi alabilememiz için kullanabileceğimiz --help seçeneği barındırır.

man komutunu kullanabiliriz. man yazıp boşluk bıraktıktan sonra ilgilendiğimiz komutu yazarak komut hakkında detaylı bilgi edinebiliriz. Açılan sayfada ilerlemek için enter tuşumuzu kullanalım ve çıktımızdan çıkıp konsol komut satırına dönmek için q (quit) tuşunu kullanalım.

info komutunu kullanabilriz. Kabuk komutları hakkında bilgi almak için info kullanabiliriz. info yazıp boşluk bırakıp komutumuzu yazalım. sudo komutu için
user@bilgisayaradı:~$ info sudo
Her komut için bir info bilgisi bulunmaz. Ancak bazı komutlarda yapacağımız info sorgusuyla man komutundan elde edebileceğimiz bilgiden daha fazla bilgi edinebiliriz.

bash kabuğuna özel olarak da help komutunu kullanabiliriz. bize yukarda bahsettiğimiz --help seçeneğinden farklı bir çıktı verir. bazı komutlar kabukta yerleşik olarak bulunur, bu yüzden bir dizin içinde gözükmezler. help komutu bu komutları listeler ve her biriyle kullanılabilecek seçenekleri gösterir.
**eğer ekranımıza gelen çıktı büyük ihtimalle sayfadan taşacaktır, rahat bir şekilde çıktıyı görüntülemek için;
user@bilgisayaradı:~$ help |less
yazarak bahsi geçen komutları görüntüleyebiliriz.


Kaynakça:
ana kaynağım;
http://kitap.antoloji.com/linux-kitabi/ linkteki yayın.
ve fırsat buldukça incelediğim yardımcı kaynaklarımda;
http://book.pdfchm.net/Linux-Command-Line-and-Shell-Scripting-Bible/9780470251287/
http://book.pdfchm.net/A-Practical-Guide-to-Ubuntu-Linux/9780132360395/
http://book.pdfchm.net/Linux-Networking-Cookbook/9780596102487/
ve tabiki www.google.com.tr
İnsanlık bugün ızdırap çekmektedir. Bunun sebebi üretim kapasitesinin artması değil gelişmeye mani olan organizasyon hatalarıdır. Yaşının bilincinde olmayan, Yaşının bütün ızıdırabıyla doludur. Eğer sanayi gelişmesi sosyal gelişmenin önünde ise memleket yaşının bütün ızdırabıyla dolu olacaktır.

munirekinci

Çok güzel bir yazı. Ellerine sağlık.

heartsmagic

Devamını da bekliyoruz, eline sağlık.
Minicik bir hata, KDE için olan terminal ismi console değil konsole :) Dediğim gibi minicik :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

atomkarinca

Eline sağlık, güzel bir yazı olmuş ve sanıyorum  bu başlık altında devamıda gelecek. Merakla bekliyoruz. Bende Minicik bir istekte bulunayım :) yazın tamamlandığında yararlandığın kaynakları  bir liste halinde en alta kaynakca bölümüne koyarsan çok güzel olacak. Dileyen kaynakcaya başvurabilir.

sidious

rica ederim, vazifemiz :)
konsole yazarken el alışkanlığı işte hehe.
umarım link vermemde bi mahzur yoktur.
ana kaynağım;
http://kitap.antoloji.com/linux-kitabi/ linkteki yayın.
ve fırsat buldukça incelediğim yardımcı kaynaklarımda;
http://book.pdfchm.net/Linux-Command-Line-and-Shell-Scripting-Bible/9780470251287/
http://book.pdfchm.net/A-Practical-Guide-to-Ubuntu-Linux/9780132360395/
http://book.pdfchm.net/Linux-Networking-Cookbook/9780596102487/
linklerdeki kaynaklar :)
İnsanlık bugün ızdırap çekmektedir. Bunun sebebi üretim kapasitesinin artması değil gelişmeye mani olan organizasyon hatalarıdır. Yaşının bilincinde olmayan, Yaşının bütün ızıdırabıyla doludur. Eğer sanayi gelişmesi sosyal gelişmenin önünde ise memleket yaşının bütün ızdırabıyla dolu olacaktır.

erginemr

Bu güzel yazı için ben de teşekkür ederim. :)

heartsmagic

Linklerin elbette mahsuru yok, bilakis yararı var. Devamını da ilk mesajını düzenleyerek yaparsan çok güzel olur. Kaynakları da onun sonuna eklersin böylece.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

sidious

2. kısmınıda yayına koydum birincisine ekleyerek. yalnız bir ricam olacak başlığı
"Kabuk (SHELL) nedir? Nasıl Kullanılır?" olarak değiştirebilirmiyiz.

İnsanlık bugün ızdırap çekmektedir. Bunun sebebi üretim kapasitesinin artması değil gelişmeye mani olan organizasyon hatalarıdır. Yaşının bilincinde olmayan, Yaşının bütün ızıdırabıyla doludur. Eğer sanayi gelişmesi sosyal gelişmenin önünde ise memleket yaşının bütün ızdırabıyla dolu olacaktır.

heartsmagic

#8
Başlık isimlerini o başlığı açan üye de değiştirebilir, aklında olsun.

Yazı çok güzel bir şekilde gelişiyor. Şu hali bile oldukça yararlı ve güzel bilgiler içermekte. Kullanılan dil de gayet düzgün. Derleme olsun, kendi yazdıkların olsun, çok güzel bir başlığa imza attın @sidious, eline sağlık.

Not: Daha uygun bir başlığa taşıyıp, sabitledim.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

tolgor

sidious gerçekten emeklerine sağlık. Teşekkür ederim bir benim gibi çok arkadaş içinde yararlı kaynak olacaktır. Çalışma hayatında başarılar...

sidious

Takdiriniz ve Ek bilginiz için teşekkürler @heartsmagic
Evet İnşaAllah devamını sonuna kadar getirebilirim. Bana sebep bizim bilgi işlem personeli de artık forumumuzu inceliyor. şuanda bizim yazılım mühendislerinden biri de üyemiz oldu, başlığı inceliyor :)
yakında ubuntu ailesine bu aileye yakışan cinsten (yanlış anlaşılmasın :)) 3-4 kişi daha katacak gibiyim.
İnsanlık bugün ızdırap çekmektedir. Bunun sebebi üretim kapasitesinin artması değil gelişmeye mani olan organizasyon hatalarıdır. Yaşının bilincinde olmayan, Yaşının bütün ızıdırabıyla doludur. Eğer sanayi gelişmesi sosyal gelişmenin önünde ise memleket yaşının bütün ızdırabıyla dolu olacaktır.

heartsmagic

Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

hit44

Merhaba,

Yeni bir Lunix kullanıcısım. Faydalı oldu.
Emeğinize sağlık..

Saygılarımla

badboycihan

tesekkurler cok guzel yazi ellerine saglik
CentOS

garafatma

birçok soru işaretim ortadan kalktı diyebilriim

çok teşekkürler :)
Bira, Tanrı'nın bizi sevdiğinin ve eğlenmemizi istediğinin kanıtıdır.

>-- Askıdaki Çeviri --< Ubuntu Türkçe Çevirilerine Sizde Destek Olun
Elveda metal müziğin tanrısı... \m/ Ronnie James DIO: 1942 - 2010

mumutum

çok teşekkürler, çok yardımcı oldu! :)

Linuxman.

Teşekkürler.Bende birşeyler ekliyim.
---------------------------------------------------------------------------------------------------------------------------------------
Kabuk tüm bu özellikleri yanı sıra,bir programlama dili olarak da karşımıza çıkar.Kabuk programlamayla,
diğer programlama dillerinde olduğu gibi kullanışlı uygulamalar yazılabilir.Günümüzde Unix sistemler
için temel olarak üç tane standart kabuk sunulmaktadır.Bunlar Bourtne kabuğu,POSİX kabuğu ve C kabuğudur.Bunların dışında TC kabuğu,Bourne Again kabuğu ve Z kabuğu gibi kabuklar da vardır.
Bourne kabuğu tüm Unix sistemlerde bulunur.Öğrenme açısından kolay bir kabuk olmasına rağmen,komut
düzenleyicisinin bulunmayışı ve çok kullanışlı olmaması yüzünden pek tercih edilmez.
POSİX kabuğu için,Bourne kabuğunun biraz daha etkileşimli olanı diyebiliriz.Bununla birlikte daha çok Korn
kabuğunu andırır.Tüm Unix sistemlerinde kullanılabileceğinden,taşınabilirlik özelliği önemlidir.
C kabuğu,daha çok C programcılar tarafından tercih edilmektedir.Unix'e yeni başlayanlar için pek tercih
edilmez.Bourne kabuğuna göre çok daha gelişmiştir.Tüm Unix sistemlerinde bulunmadığından,taşınabilirlik
açısından pek tavsiye edilmez.Ancak geçmiş komutların listesini saklayabilme özelliğinden dolayı,sistemden
çıkarken arkasında delil bırakmak istemeyen hacker'lar tarafından sıkça kullanılır.
Korn kabuğu,komut düzenleme açısından ilk sıraya yerleşmiştir.Ayrıca komut günlüğü tutmak ve bunu
çağırmak gibi çok kullanışlı işlevleri de vardır.Unix' yeni başlayanlar için bu kabuk tavsiye edilir.

Kaynak:Hacking(Bilişim Korsanlığı ve Korunma Yöntemleri)-Davut Yılmaz.
Forever Linux....
In theory,there is no difference between theory
and practice.In practice,there is !

hasansahin

Alıntı yapılan: sidious - 12 Ağustos 2008 - 03:26:05
Peki bu seçenekleri nasıl kullanırım?
Öncelikle; bir komutun ne işe yaradığı, alt seçeneklerinin ne olduğu gibi bilgileri öğrenmemiz gerekmektedir. bunun için UBUNTU da man komutunu, LINUX sistemlerin genelinde ise --help komutlarını kullanabiliriz.
Bu güzel yazıyı bende okudum. Gerçekten çok güzel olmuş.
Yukarıdaki cümleden, "man komutu sadece Ubuntu'da vardır" gibi bir anlam çıkmıyor değilmi?
Anyone who has never made a mistake has never tried anything new.
Albert Einstein.

mtilhan

Alıntı yapılan: HasanŞahin - 26 Mart 2009 - 16:56:55
Alıntı yapılan: sidious - 12 Ağustos 2008 - 03:26:05
Peki bu seçenekleri nasıl kullanırım?
Öncelikle; bir komutun ne işe yaradığı, alt seçeneklerinin ne olduğu gibi bilgileri öğrenmemiz gerekmektedir. bunun için UBUNTU da man komutunu, LINUX sistemlerin genelinde ise --help komutlarını kullanabiliriz.
Bu güzel yazıyı bende okudum. Gerçekten çok güzel olmuş.
Yukarıdaki cümleden, "man komutu sadece Ubuntu'da vardır" gibi bir anlam çıkmıyor değilmi?
Umarım çıkmıyordur çünkü diğer dağıtımlarda da man paketini yükleyince man kullanılıyor :)
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

heartsmagic

@Linuxman., kullandığın kaynak biraz eski olabilir :)
Linux dağıtımları üzerinde şu anda bash (Bourne-Again) öntanımlı olarak gelmekte.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

Linuxman.

Alıntı yapılan: heartsmagic - 27 Mart 2009 - 03:18:15
@Linuxman., kullandığın kaynak biraz eski olabilir :)
Linux dağıtımları üzerinde şu anda bash (Bourne-Again) öntanımlı olarak gelmekte.

Anladım. :) Peki Korn kabuğu gerçekten öğrenilmesi en kolay olan mı?
Forever Linux....
In theory,there is no difference between theory
and practice.In practice,there is !

canosayan

Chmod bizim işimiz.

heartsmagic

Alıntı yapılan: Linuxman. - 27 Mart 2009 - 14:25:12
Alıntı yapılan: heartsmagic - 27 Mart 2009 - 03:18:15
@Linuxman., kullandığın kaynak biraz eski olabilir :)
Linux dağıtımları üzerinde şu anda bash (Bourne-Again) öntanımlı olarak gelmekte.

Anladım. :) Peki Korn kabuğu gerçekten öğrenilmesi en kolay olan mı?

Korn ile içli dışlı olmadım ancak Bash öğrenmek isteyip de zorlandım diyenini görmedim.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

mtilhan

@heartsmagic yaz beni o 'Bash öğrenmek isteyip de zorlananlar'a :)
Bir türlü tam kavrayamadım :(
Neyse ama bu pazartesi yerel seçimlerden tatil ya oturup tamamen kavramaya çalışırım. Ama açıkçası daha bash'in ne işe yaradığını anlamadım :)
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

heartsmagic

Yanlış anlaşıldım :) Aslında korn ve bash arasında kalıp da, öğrenmek isteyip de, "korn kolaydı, bash zordu" diyeni görmedim demek istemiştim.
Bash hakkındaki belgeleri okursan ne olduğunu az çok anlarsın, ardından istiyorsan kabuk programlama kısmına geçersin. SUDO da bile giriş mahiyetinde ve devam eden bir yazı dizisi var @canosayan'a ait. Google ile hem Türkçe hem yabancı dilde birçok kaynağa erişebilirsin. Kendine biraz vakit ayırırsan eminim rahatlıkla çözersin kabuğu da.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.