Yardım Alma

Coğu komut yanına -h veya –help yazıldığında kucuk bir bilgi verir. Buna ek olarak linux’ta binlerce dokumanın bulunduğu manual sayfaları vardır. Yapmanız gereken tek şey man komutundan sonra bilgi almak istediğiniz komutun adını yazmak.

komut -h: Komut hakkında kısa bilgi
komut –help: Ustekinin aynısı
man komut: Komut hakkında detaylı dokuman
Dosyaları Listeleme

Linux’ta bir dizindeki dosyaları listelemek icin kullanılan komut lsdir. Ekrana sığmayan uzun listeleri gostermek icin ise bu komut less ile beraber kullanılabilir.

ls: Bulunduğun dizinin iceriğini goster
ls -a: Gizli dosyaları da goster
ls -l: Uzun listele (sahip, izinler, boyut ve tarih dahil)
ls | less: Uzun listeleri kısaltmak icin
Dizin değiştirme

Başka bir dizine gecmek icin cd komutu kullanılır.

cd yol: yol dizinine gecer
cd ~: Sizin home dizininize gecer
cd -: Bir onceki dizine doner
cd..: Bir ust dizine gecer
Dosya ve dizin yonetimi

Bir dizini veya dosyayı kopyalamak icin cp, taşımak icin mv, yeni klasor oluşturmak icin mkdir, dosyayı silmek icin rm, dizini ve icindeki dosyaları silmek icin rm -R, boş bir dizini silmek icin ise rmdir kullanılır.

cp kaynak hedef: Kaynaktan hedefe kopyalar
cp -R kaynak hedef: Onyineli(recursive) kopyalar
mkdir dizin: Yeni dizin yaratır
mv kaynak hedef: Dosyaları taşımak veya adlarını değiştirmek icin
rm dosya: Dosyayı kaldırır
rm -R dizin: Onyineli kaldırır
rmdir dizin: Boş dizini kaldırır
touch dosya: Dosya varsa tarihini değiştirir, yoksa yaratır
pwd: Calışılan dizinin ismini verir
Dosya arama

Herhangi bir dosyayı sistemde aramak icin find ve locate komutları kullanılır. find bulunduğunuz dizinden başlayarak tum alt-dizinleri arar. locate ise tum dosyaları bir veritabanında tutar, bunun icin hayli hızlıdır. Ancak bu veritabanı gunde bir yenilendiğinden son kaydettiğiniz dosyaları bulamayabilirsiniz.

find yol -name dosyaadı: Belirttiğiniz dizinden başlayarak dosyayı arar
locate dosyaadı: Dosyayı arar
Metin dosyalarıyla calışma

Kısa bir metin dosyasını goruntulemek icin cat, metin dosyasında yon tuşları-Page Up/Down ile ilerlemek icin less, dosyada bir yazıyı aramak icin grep, satırları sıralamak icin sort, ve kucuk bir editor ile acmak icin ise pico kullanılır.

cat dosyaadı: Dosyayı ekranda goruntuler
grep yazı dosyaadı: Yazıyı dosyada arar, bulunduğu satırı goruntuler
less dosyaadı: Dosyada ilerlemek icin kullanılır (Cıkış q ile)
pico dosyaadı: Dosyayı basit bir metin editoruyle acar
sort dosyaadı: Dosyadaki satırları alfabetik sıraya gore dizip gosterir
Sıkıştırılmış dosyaları acma

İnternetten indirdiğiniz dosyalar genelde sıkıştırılmıştır. Bunları acmak icin dosya tipine gore arac kullanmalıyız.

bunzip2 dosyaadı.bz2: bzip2 dosyasını (.bz2) acar
gunzip dosyaadı.gz: gzipped (.gz) arşivini acar
unzip dosyaadı.zip: PkZip veya WinZip dosyasını (.zip) acar
tar -xvf dosyaadı.tar: tar (.tar) arşivini (tarball) acar
tar -xvzf dosyaadı.tar.gz: tar arşivini (.tar.gz or .tgz) acar
Ağ servislerini kullanma

Dosya transferi yapmak icin ftp, ağ bağlantısını kontrol etmek icin ping, secure shell protokolune bağlanmak icin ssh, telnet protokolu uzerinden bağlanmak icin ise telnet kullanılır.

ftp sunucu: FTP sunucusuna bağlanır
ping sunucu: Sunucuya ping isteği gonderir
ssh -l kullanıcıadı sunucu: Uzaktaki makinaya Secure Shell protokolu ile bağlanır
telnet sunucu: Uzaktaki makinaya TELNET protokolu ile bağlanır
Sistem bilgisi goruntuleme

date: İşletim sisteminin saat ve tarihini goruntuler
df -h: Disk kullanımını goruntuler
free: Bellek kullanımını goruntuler
history: Kullanılan hesap icin calıştırılan komutları listeler
hostname: Yerel sunucu adını verir
rwho -a: Ağa bağlı kullanıcıları listeler
uptime: Bilgisayar acıldığından beri gecen sureyi verir
who: Makineye bağlı kullanıcıları listeler
whoami: Giriş isminizi goruntuler
Dosya izinlerini değiştirme

chown kullanıcı.grup dosyaadı: Dosyaya sahip olan grubu ve kullanıcıyı değiştirir. Tabii ki bu komutu sadece o dosyanın sahibi kullanabilir
chmod (augo)(+-)(rwx) dosyaadı: Dosya uzerindeki okuma-yazma-calıştırma (read-write-execute) izinlerini (rwx) farklı seviyedeki kullanıcılar icin (all-owner-group-other) artırıp azalmayı (+/-) sağlar


Linux temel olarak kullanıcıyla X Pencere Sistemi adı verilen (startx buyruğuyla başlatıldığını daha once gormuştuk.) bir pencere ortamı olmaksızın, komut satırından iletişim sağlayan bir sistemdir.Konsolda her komuttan sonra helpine bakarsanız o komutun tum fonksiyonlarını gorebilirsiniz.

Ornek :

ls –h

veya : ls –help

[email protected]: ~# _
tipik bir komut yorumlayıcı komut (prompt). Komutların bicim ya da yapısı kullanıcının isteğine gore oluşturulabilir. Bizim ozel orneğimizde “@” iminden onceki etiket (root ) şu anda gecerli olan kullanıcıyı, aku ise sistemin konak adını belirtiyor. ~ karakteri, yoneticinin hesabı halinde /root olacak olan kullanıcıların anayerleşim (home) dizinini gosteriyor ve son olarak da “#” komutu bu ozel hesabın super kullanıcıya ait olduğunu belli ediyor. Kullanıcı şimdi hareketeden imlecten sonra herhangi bir komutu girebilir.

ls: dizin iceriğini listeler
Orneğin: [email protected]:~$ ls
BasiliX/ dead.letter mail/
[email protected]:~# ls -l deneme
Bu ornekte kullanıcının nasıl bir komut (ls), bir komut seceneği (-l) ve bir parametreden (deneme) oluşan bir deyim oluşturduğunu gorebiliriz. Kullanıcı enter tuşuna bastığında, Linux deneme dosyasını listeleyecektir (dosyanın buyukluğu, oluşturulduğu tarih, ve birkac başka ozelliğini goruntuleyecektir.) Bir kabuk deyiminin genel yapısı, bir karakter boşluktan sonra komut adını izleyen seceneklerden oluşur.

ls -l -a deneme
Secenekler aşağıdaki gibi birlikte de kullanılabirler:

ls -la deneme
Son olarak, komut dosya olarak birden fazla dosyaadı belirtilebilir, bunlar da birbirinden boşluk karakteriyle ayrılmalıdır.

ls deneme word yedek
Bu, deneme, word ve yedek dosyalarını ayrıntı vermeden listeler. Dosyaların daha ayrıntılı bir tanımlamasını almak isteyen daha onceki gibi -l seceneğini kullanabilir.

ls -l deneme word yedek

Linux, sistemin nasıl kullanılacağı hakkında cok geniş ağiletişimli (online) bilgiye sahiptir. Bir komutun adını biliyor ve nasıl kullanıldığını oğrenmek istiyorsanız :
man [komut]
Bu, komutunun elyordam sayfasını oluşturacaktır. Hemen hemen tum sistem komutları icin elyordam sayfaları sistemde var durumdadır. man komutunun kendisinin secenekleri hakkında daha cok bilgi almak isterseniz, yalnızca man man yazmanız yeterli. Bir UNIX buyruğunun seceneklerini akılda tutmak asla gerekmez. Cunku ağiletişimli elyordam sayfaları her zaman belleğimizi tazelemek icin hızlı ve kolay bir yol sağlar. Ote yandan oğrenmek istediğiniz şeyin konusunu ya da bir ackı sozcuğunu biliyorsanız şunu deneyin:

apropos [subject]
Bu, konuyla ilişkili tum komutların bir listesini verecektir. [email protected]:~$

apropos zip
atalkd (8) - AppleTalk RTMP, NBP, ZIP, and AEP manager
bzip2, bunzip2 (1) - a block-sorting file compressor, v1.0 bzcat - decompresses files to stdout bzip2recover - recovers data from damaged bzip2 files
explodepkg (8) - Extract the contents of a tar+GNUzip package (such as a Slackware software package) in the current directory.
funzip (1) - filter for extracting from a ZIP archive in a pipe
gzip, gunzip, zcat (1) - compress or expand files
jaztool, ziptool (1) - Tool for Iomega JAZ and ZIP drives
mzip (1) - change protection mode and eject disk on Zip/Jaz drive ‘” t TQ $1 ..
unzip (1) - list, test and extract compressed files in a ZIP archive
unzipsfx (1) - self-extracting stub for prepending to ZIP archives
zforce (1) - force a ‘.gz’ extension on all gzip files
zip, zipcloak, zipnote, zipsplit (1) - package and compress (archive) files
zipgrep (1) - search files in a ZIP archive for lines matching a pattern
zipinfo (1) - list detailed information about a ZIP archive




ls –help:
Bazı komutlar –help parametresiyle birlikte verildiğinde mumkun olan tum seceneklerin kısa bir tanımını verirler.
Bir komutun cıktısı bir ekrandan fazlasını dolduruyorsa kaygılanmak icin bir neden yoktur, cıktıyı okumak icin klavye uzerindeki PageUp ve PageDown tuşlarını kullanmak yeterlidir. Coğu Linux surumu ceşitli programlar ve yararları hakkında bircok kaynakbilgi (document) icerir. Bu kaynakbilgiler /usr/doc dizinindedir. Orneğin tetex ile ilgili bilgi icin yalnızca bu dizine girip more tetex yazmanız yeterlidir. /usr/doc dizinindeki dosyaların coğu ASCII dosyalarıdır. Daha da coğu var. info sayfaları komutların tanımlarını ve uygulamalarını icerir. emacs editorunden [Control+h][Control+i] tuşlarıyla kolayca erişilebilen info sayfalarında da acıklamalar bulabiliriz.

$ ls -l
drwxr-xr-x 3 fenix fenix 1024 Jun 15 1997 Calendar
drwx—— 5 fenix fenix 1024 Nov 6 19:35 Desktop
drwx—— 2 fenix fenix 1024 May 16 1997 Mail
drwxrwxr-x 2 fenix fenix 1024 Mar 10 00:28 X11
lrwxrwxrwx 1 root root 11 Mar 13 20:53 ada -> private/ada
drwxrwxr-x 2 fenix fenix 1024 Mar 10 00:28 bin

cp: Dosya kopyalama
Bu komut dosyayı başka bir dizinde bulmak veya yeni başka bir ad vermek icin dosya kopyalamaya izin verir.
[email protected]:/home/web# cp index.html /home/www/
Eğer, yedek varolan bir dizin değilse, komut, dosyayı başka bir ad altında kopyasının yaratılmasının istendiği yorumunu yapacaktır. Buradaki yedek dizini home altındaki son klasorunun icine kopyalanacaktır.

mv: Dosya taşıma
mv “MoVe” demektir ve taşı anlamına gelir. Bu komut ile dosyaları yeniden adlandırabilir veya diğer bir dizine taşıyabilirsiniz.
[email protected]:/home/web# mv index.html /home/www/
Eğer yedek varolan bir dizin olmasaydı, dosyayı yeniden adlandırmak istediğiniz yorumu yapılacaktı. Yedek dizini home altına taşınacaktır.

cd: dizinin icine girmek
Argumansız cd buyrucu ilk dizine gecişi sağlar. Eğer yetkin kullanıcı (superuser) iseniz bu komut size /root/ dizinini verecektir; eğer hasan iseniz /home/hasan’a gideceksiniz. Burada gorebildiğiniz şey dizinlerin sağ tarafa eğimli cubuklara sahip olduğu gerceğidir Son olarak, /home ~ karakteri ile yer değiştirebilir. Bu nedenle, cd ~yedek bizi /home/yedek ‘ğe goturur. [email protected]:/home/webadmin# cd linuxweb
[email protected]:/home/webadmin/linuxweb#

mkdir: dizin oluşturmak
[email protected]:/home/webadmin# mkdir linuxweb
[email protected]:/home/webadmin/linuxweb#
mkdir [dizinadı] biciminde cok basit bir yapıdır ve bu ad altında bir dizin yaratır.

rmdir: boş bir dizini silmek
[email protected]:/home/webadmin# rmdir linuxweb

İcinde dosyalar bulunmayan bir dizini yok etmek istiyorsanız, rmdir [dosyaadı] komutuyla yapılır. Eğer dosyalara sahip dizinleri yok etmek istiyorsanız (ya da diğer dizinler) rm komutuna bakın.

rm: dosyayı silmek
rm [dosyaadı] ile her tur dosya silinir.
Diğer ek komutları: -i Dosyayı silmeden once doğrulama gerektirir.
-r Bir dizini ve onun tum iceriğini siler.
-rf Bir dizini ve onun iceriğini herhangi bir doğrulama gerektirmeksizin siler.

ln: diğer dosyalara link vermek
Linux dosyaların ayrı adlara sahip olduğunu veya onlara ayrı dizinlerden erişebileceğimizi varsayar. Bu, bağlantılar ile yapılır. İki turu vardır: ” katı: bağlantıda dosya iceriğinin tamamını kopyalar, kaynak dosya veya tersine bağlantı değiştiğinde karşılığı da değişir. ” simgesel: Kopyalamaz, kaynak dosyaymış gibi calışır. Bu yolda dosya iceriğinin kopyası yoktur, boylece tekerde boş yer kalır. Bugunlerde neredeyse yalnızca bu tur bağlantılar kurulmaktadır. Bu yolla dizinler sadece simgesel bağlantılara izin verir. Katı bağlantılar ln ile yapılır. Ve simgesel bağlantılar ln -s [kaynakdosyalar] [erekdosya] ile yapılır.

cat:dosyanın icini gosterir
cat [dosyaadı]

more: sayfalamalı dosya iceriği gosterimi, eğer goreceğimiz dosya cok uzunsa (ekranda gormek istediğimiz bircok satırı varsa), en ustteki ilk satırları yitireceğiz. Cozum ise ekran buffer kullanmaktır. Bu buffer altında, Mays+Repag ile yer değişimi sağlanabilir. Fakat bu buffer sınırlı buyukluktedir ve coğu kez yardımcı olmaz. more buyruğu dosyaları sayfalayarak gormemizi sağlar.
more [dosya-adı]
Bu etkileşimli bir programdır. Daha ilginc olan “keys” (etkileşimli komutlar) aşağıdadır: Ackı Fonksiyon (Key Function)
spacebar Bir sayfa ileri
b bir sayfa geriye al
return bir satır ilerle
/[string] katar’ın dosya icindeki bir sonraki yerini bul
?[string] katar’ın dosya icindeki son gorulduğu yeri bul
q bırak cık

chmod:dosya izin haklarının değiştirilmesi
Duzenli kullanıcılar (root her şeyi yapabilir) yalnızca sahip oldukları dosyaların erişim izinlerini değiştirebilirler. Bu, boşlukla ayrılmış 2 parametre turunun birleşimidir.
chmod [kim][+/-] [yenihaklar] [dosya]
kim’de aşağıdakilere gonderim yapabiliriz: Kim Betimlemesi u dosyaya sahip olan kullanıcı
g dosyaya sahip olan grup
o geriye kalan kullanıcılar
a herhangi bir kullanıcı (sahip, grup, diğerleri)
+ ile izin hakları ekler - ile izin haklarını cıkartırız.
Yeni izinlerde hangi izinlerin eklendiğini veya kaldırıldığını gosteriyoruz. Bunlar ls yardımı ile uzun listenin ilk alanındaki harfler ile betimlenirler (Bunun anlamı, r: (ku, w:yaz, x:calıştır veya konuk ol, s:SetUID şeklindedir).

chmod u+rw my
Bununla sahip (bu genellikle sizsiniz), my dosyası uzerinde okuma ve yazma iznine sahip olur.

chmod a-x directory
Ve bununla tum kullanıcıların (siz ve sahip dahil) directory dizinine konuk olma izinlerini kaldırıyoruz.
chmod diğer ve daha gelişmiş niteliklere sahiptir, bunları burada gormeyeceğiz, fakat man chmod komutunu kullanarak elyordam sayfaları kullanabilirsiniz:.

man chmod
* : Herhangi bir katara (0 veya daha cok sayıda) gonderme yapar

rm *:Butun dosyaları sil.

rm a* :a ile başlayan tum dosyaları sil.

rm bet*as :bet ile başlayıp as ile biten tum dosyaları sil.

? :herhangi karakter (yalnızca bir)

cat c?t : c ile başlayan ve sonu t ile biten tum dosyaların iceriklerini goruntuler.

[group]: koşeli parantezler arasındaki karakter grubu

more [tp]erez:Eğer varsa, sayfa duzeninde terez ve perez dosyalarını gosterir.
cp c[AEIOU]endo directory c ile başlayan, [ ve ] arasında verilen buyuk harflerle suren ve endo ile sona eren dosyaları directory adlı dizine kopyalar. Aralıkları yaratmak icin “-” kullanabiliriz:

mv *[a-z] trash :Buyuk harf ile bitmeyen tum dosyaları trash adlı dizine taşır. Aralıkların dışı da taban alınabilir:

ls [!a-zA-Z]* :İlk karakteri buyuk veya kucuk harf olmayan dosyaları listeler.

nl :Bir dosyayı satırlarını numaralamak ve mantıksal sayfalar halinde gostermek icin kullanılır.
nl komutu nl [secenekler][dosya] şeklinde kullanılır. $nl x _file
1 aku
2 bim

wc: Dosyada bulunan satır,kelime veya karakter sayısını gosterir.Sokakta başka anlama gelir
$wc index.html
59 95 1188 index.html

pwd: Kullanıcı dizinler uzerinde hareket ederken zaman zaman hangi dizin uzerinde calıştığını oğrenmek icin bu komut kullanılır.
$pwd
/usr/ser

chown:Bir dosyanın veya dizinin paremetresinde tanımlı bulanan dosya veya dizinin sahibi parametrelerini değiştirir. Dosya veya dizin sahibi parametresi /etc/passwd dosyasında, kullanıcı kimliği(user ID) veya bağlantıı ismi (login name) olarak kayıtlı bulunmak zorundadır.Dosya ve dizin parametreside /etc/group dosyasında, group kimliği (group ID)veya gurup ismi (group name ) olarak kayıtlı olmak zorundadır.
chown [-f][-h][-R] sahibi[:grubu]

ps:Aktif işlemler hakkında ceşitli bilgileri goruntuler [email protected]:~/mail$ ps
PID TTY TIME CMD
15085 ttyp1 00:00:00 bash
15232 ttyp1 00:00:00 ps
You have new mail in /var/mail/root

kill:Calışan sureci durdurmak icin singal gonderir.Bir root kullanıcı herhangi bir sureci kil komuduyla oldurebilir.Eğer root kullanıcısı değilseniz sadece kendinize ait işlemleri oldurebilirsiniz.
kill [-s]surec tanıtım numarası (PID)

lprm : (line printer remove)Printer’da dokum icin bekleyen işlemleri sıran cıkarır.
lprm[-P Printer][gorev sırası][Kullanıcı adı..][-]

echo:İfadeleri goruntulmek icin bu komut kullanılır,kabuk programlarında kullanılır.
Once a değişkenini “hasan”‘a aktaralım sonra da echo komutula hasanı goruntuleyebiliriz.
$ a=hasan
$echo $a
hasan
$_

date:Sistemin tarihini ve zamanını gosterir.date komutu “date+%X”şeklinde kullanılır.
$date
Mon Jan 11 13:29:48 Mest 2002

tail : Dosyanın son bolumunu goruntuler.
$tail yedek
yedek dosyasının son 10 satırını goruntuler.

uname:İşletim sistemi hakkında bilgi verir.Kernelinizin surumunu gormek icin “uname -r” .
-m Makinanın donanımının adını verir.
-n Nodename i yazar. Nodename sistemin network iletişimi icin kullanılır..
-r Print the operating system release
-s Sistem ismini yazar
-v İşletim sisteminin versiyonuu yazar
-a yukarıdaki bilgilerin tamamını yazar

ping : (packet internet groper)Bir network bilgisayara ICMP(Internet Control Message Protocol)echo paketi gonderir ve geri donen paketleri bildirir.

Hostname: Paketlerin gonderildiği bilgisayarın ismini belirtir.

mount : Uzerinde bir dosya sistemi olan bir disk birimine veya parcasına okuma veya yazma amacıyla ulaşabilmek icin bu birim veya parcayı / dosya yapısında bir alt dizine mount edilmiş olması gerekir./dizini bilgisayarın acılması sırasında otomatik olarak mount edilmektedir. Eğer bu kok dizini bilgisayarın acılması aşamasında mount edilmezse , o bilgisayar zaten acılmaz.Diğer disk ve disk parcalrı otomatik olarak mount edilmesi icin gerekli işlemler ise sistem yoneticisi root tarafından yapılır. Otomatik olarak mount edilmesi istenen diskler ve mount edilecekleri dizinler /etc/filesystems dosyasında tanımlanır.
[email protected]:~$ mount

/dev/sda1 on / type ext2 (rw)

/dev/sda3 on /home type xfs (rw)

none on /proc type proc (rw)

mailx : Mesajların elektronik olarak alınması ve gonderilmesi icin ortam sağlayan bir yazılımdır. “mailx”komutu mesaj okunurken saklama silme ve mesajla yanıtlama olanağı sağlar.
mailx [secenekler] [isim]
[email protected]:~$ mailx
Mail version 8.1 6/6/93. Type ? for help.
“/var/mail/utebay”: 26 messages 25 unread
1 [email protected] Sat Jun 29 09:37 13/546 “DON’T DELETE THIS MES”
2 [email protected] Fri Jun 28 17:44 67/2841 “[Linux] Re: ntfs moun”

grep : Karekterlerden oluşan belirli kalpıları bir veya daha fazla dosya icinde aramınızı sağlayan komuttur.
grep[secenekler]ifade [dosya…] $ cat deneme.c
include “stdio.h”
main ()


who komutu : Sistemde o anda kimlerin calıştığını saptayan komuttur.
who [secenekler][isimler]

umount : Mount edilmiş bir kutuk sistemini, bilgiisayarın /kutuk sisteminden ayırmak icin kullanılır.Bu işlem genellikle CD ler icin kullanılır.
[-f][-a]|[all|allr|Device |Directory|File|FileSystem|-n Nome|-t Type]

Paste : Aynı bir dosyanın veya başka dosyaların bellirli kısımlarını bir araya getirmek icin kullanılır. Paste komutuyla ister yatay, isterse duşey olarak birleştirme işlemi yapılabilir.
paste[secenekler][dosya..]

head : Dosyalrın ilk kısmını listeler.Verilen dosyanın belirtilen kadar satırını, belirtilmemişse ilk 10 satırını listeler. Eğer dosya verilmemişse veya’-'dosya adıyla karsılaşılasırsa standart girdiler okunur.Eğer birden fazla dosya verilmişse her dosya listelemesinde once ==> ve İcinde “kelime” gecen tum kılavuz sayfalarını tarar.
cp &ltdosya1> &ltdosya2> dosya1′i dosya2′ye kopyala.
PATH Calıştırılabilir dosyaların yerini gosteren değişken
echo $PATH Bir dosya calıştırılmadan once nereye bakılacağını gosterir.
SHELL Altında calışılan kabuk.
echo $SHELL Calışan kabuğu gosterir.
__________________