Bilginin Adresi Homepage
Forum Home Forum Home > Bilgisayar > Pardus / Linux İşletim Sistemleri
  New Posts New Posts RSS Feed - Linux Komutları
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Linux Komutları

 Post Reply Post Reply
Author
Message
kral View Drop Down
Administrator
Administrator
Avatar

Joined: 08-03-2006
Status: Offline
Points: 939
Post Options Post Options   Thanks (0) Thanks(0)   Quote kral Quote  Post ReplyReply Direct Link To This Post Topic: Linux Komutları
    Posted: 09-01-2022 at 23:06
1: Dosya Komutları

Linux / Unix te kullanılan temel dosya komutları genel anlamda dosya ve klasörlere Erişim, Silme, Değiştirme, Oluşturma, Sıkıştırma ve Var olan dosyalara çeşitli izinler veren komutlardır. Bu komutlarımız Aşağıdakilerdir.

    ls
    cd
    pwd
    mkdir
    rm
    cp
    mv
    wc
    ln
    touch
    cat
    more
    head
    tail
    chmod
    gzip
    gunzip
    alias

ls Komutu: Bulunduğumuz dizinde var olan klasör yada dosyaları listelemeye yarar. Unix ve Windows taki Dir komutuna eş değerdir. ls komutu aldığı parametreye göre farklı değerler dönderir. Ben burda tüm parametrelerini anlatmayacağım.Tüm parametreleri ve kullanımını görmek için terminale ” man ls ” yazmanız yeterlidir. Şimdi bulunduğum dizine ls yazıyorum ve çıktısı aşağıdaki gibi oluyor.



Ls komutuna ls -a şeklinde kullanırsak dizinde bulunan gizli açık tüm dosyaları listeler. ls komutunu ls -l şeklinde kullanırsakta dizindeki dosyalar hakkında geniş bilgi verir. Oluşturulma değiştirme tarihi ve dosya için yetkiler vb.. bilgiler yer alır.2 komutun kullanımı ve çıktısı aşağıdaki gibidir.



cd komutu: Bu komutla belirtilen dizine geçiş yapılır. Kullanımı aşağıdaki gibidir.

cd “Gidilecek Dizin”



” cd .. ” komutuyla bir üst dizine ve ” cd ~ ” komutu ile ise en üst dizine gidilir.

pwd komutu: Açılımı Print Working Directory olan bu komutun görevi bulunduğumuz dizinin tam adresini ve adını verir.





mkdir komutu: Bu komutun görevi bulunduğu dizinde belirtilen ad ile bir dizin oluşturmadır.

— mkdir “Dizin Adı” — şeklinde kullanılır.

rm komutu: Bu komut ile belirtilen dosya silinir.

— rm “Dosya Adı” — şeklinde kullanılır.

Ayrıca rm -r “Dizin Adı” şeklinde de kullanılır. Bu kullanım ile belirtilen dizin silinir. Komutların ayrıntılı parametrelerini ve nasıl kullanıldıklarını öğrenmek için —  man “komut adı” — komutunu kullanınız.

cp komutu: Bu komut ile belirtilen bir dosyanın veya dizinin içeriği belirtilen diğer bir dosya yada dizine kopyalanır. Kullanımı aşağıdaki gibidir.

—  cp Dosya1 Dosya2 şeklindedir. Dosya1 i Dosya2 ye kopyalar. —-

—  cp Dizin1 Dizin2 şeklindedir. Dizin1 i Dizin2 ye kopyalar. —-

mv komutu: Bu komut ile belirtilen bir dosya başka bir dosyaya taşınır yada isim de değiştirilebilir bu komut ile. Kullanımı aşağıdaki gibidir.

—  mv Dosya1 Dosya2 şeklindedir. Dosya1 i Dosya2 ye taşır. —-

wc komutu: Bu komut ile belirtilen dosyanın satır,kelime ve karakter sayısı gösterilir. Kullanımı aşağıdaki gibidir.

—- wc Dosya şeklindedir. Bu komut ile Dosya nın yan yana içerdiği satır,kelime ve karakter sayıları döndürülür.

ln komutu: Bu komut ile bir dosyayı sembolik bir link ile çağırabiliriz. Yani bir nevi bu link dosyamızın adresini  tutmuş olacak. Kullanımı aşağıdaki gibidir.

—  ln deveci link  şeklindedir. deveci adlı dosyayı link e bağlıyoruz. link te yada deveci de yapacağımız değişiklik her ikisini de etkileyecektir —-  Bir diğer kullanımı da aşağıdaki gibidir.

—  ln -s deveci link  . Bu kullanımda ise deveci adlı dosyanın adresini link tutar deveci silindiğinde link te gider.

touch komutu: Bu komut ile bir dosya eğer yoksa o anki tarih ile 0 byte  uzunluğunda oluşturur eğer var olan bir dosya ise tarih bilgisi o ana göre güncellenir. Komutun kullanımı aşağıdaki gibidir.

—  touch Dosya şeklindedir.  —-

cat komutu: Bu komut ile belirtilen dosyanın içeriği görüntülenir.More komutuna benzerdir. Kullanımları aşağıdaki gibidir.

—-  cat Dosya1  şeklindedir. Dosya1 in içeriği görüntülenir.

—- cat >Dosya1 şeklinde de kullanımı vardır. Standart girişten alınan verileri dosya1 e kaydeder. Bu komutu koştuğunuzda standart giriş veri bekler sizden girdiğiniz verileri tamamladıktan sonra ctrl c ile standart girişi tamamlamış olursunuz.Girmiş olduğunuz veriler Dosya1 e kaydolur. Yalnız bu komut ile Dosya1 in içeriği önce sıfırlanır ardından girdiğiniz veriler eklenir. Eğer var olan bilgilerin üstüne standart girişten gelecek verilerin eklenmesini istiyorsanız aşağıdaki kullanımı uygulayınız.

—– cat >>Dosya1 bu kullanımda standart girişten gelen veriler Dosya1 in EndofFile kısmından itibaren ekleyip kaydeder.

Cat komutu ile standart girişten aldığınız dataları ctrl c deyip kaydedebilirsiniz.

more komutu: Bu komut yardımı ile belirtilen dosyanın içeriği sayfalanarak görüntülenir.Kullanımı aşağıdaki gibidir.

—–   more DosyaAdı şeklindedir. Dosyanın içeriği gösterilir kullanıcıya…

head komutu: Bu komut more komutundaki gibi dosyanın içeriğini getirir yalnız sadece ilk 10 satırını sunar kullanıcıya. Kullanımı aşağıdaki gibidir.

—–   head DosyaAdı şeklindedir. Dosyanın içeriğinin ilk 10 satırı gösterilir kullanıcıya…

tail komutu: Bu komut da more komutundaki gibi dosyanın içeriğini getirir fakat sadece son 10 satırı getirir kullanıcıya. Kullanımı aşağıdaki gibidir.

—–   tail DosyaAdı şeklindedir. Dosyanın içeriğinin son 10 satırı gösterilir kullanıcıya…

chmod komutu: Bu komut ile belirtilen dosyanın kullanıcı ve grupların erişimlerini değiştirebiliriz. Bir nevi yetki verme gibidir. Okuma yazma ve çalıştırabilme gibi dosyaların özelliklerini değiştirebiliriz. Binary olarak belirtilen bu iznin içeriği 1 olarak yapıldığında aktif 0 olduğunda pasif hale getirilir. Aşağıdaki gibi kullanımı vardır.

—-  chmod 777 Dosya1 . Bu örnekte aslında 777 in açılımı şu şekilde dir. 111 111 111 binary formatındadır 111=7 binary i decimale çevirdiğimizde. Verilen örneğin anlamı Dosya1 e erişen kullanıcı , gruplara ve diğerlerine  sırasıyla okuma,yazma ve çalıştırılabilme özelliği verilmiş oluyor.

— chmod 755 Dosya1. Bu örneği binary olarak açtığımızda 755=111   101   101 şeklindedir. Yani kullanıcı bütün haklara sahipken gruplar ve diğerleri okuma ve çalıştırabilme haklarına sahipler.

Bir dosyaya erişim yetkisi vermeden önce ls -l ile dosyanın sahip olduğu yetkileri görmeniz lazım. Erişim yetkilerini gördükten sonra gerekli yetkiyi vermelisiniz.

gzip komutu: Bu komut ile belirtilen dosya ziplenir yani sıkıştırılır.Kullanımı aşağıdaki gibidir.

—–    gzip Dosya şeklindedir. Bu komut ile Dosya sıkıştırılır ve adı Dosya.gz şeklinde değiştirilir.

gunzip komutu: Bu komut ile belirtilen sıkıştırılmış dosya açılır normal hale döner.Kullanımı aşağıdaki gibidir.

—–    gunzip -d Dosya.gz şeklindedir. Bu komut ile Dosya açılır ve adı Dosya şeklinde olur.

alias komutu: Bu komut ile sistemde var olan komutların adları değiştirilip takma ad takılabilir. Komutları böylece türkçeleştirmiş yada beynimizde yer edinecek bir şekilde bundan sonra kullanabilirsiniz.Kullanımı aşağıdaki gibidir.

—— alias tarih=date şeklindedir. Bundan sonra tarih dediğiniz zaman terminal size date komutunun çıktısını getirecektir.
“Bilginin elde edilmesi... bizi iyiye ulaştıracaktır.
Back to Top
kral View Drop Down
Administrator
Administrator
Avatar

Joined: 08-03-2006
Status: Offline
Points: 939
Post Options Post Options   Thanks (0) Thanks(0)   Quote kral Quote  Post ReplyReply Direct Link To This Post Posted: 09-01-2022 at 23:07
2: Sistem Bilgileri Komutu

Linux ta kullanılan Sistem bilgileri komutları genel anlamda saati,takvimi,cpu ve bellek hakkında bilgileri öğrenmeye yarayan veya sistem hakkında gerekli olan diğer bilgileri öğrenmeye yarayan komutlardır.

    date
    cal
    uptime
    df
    du
    free
    whereis
    which
    uname
    w
    whoami
    hostname
    time
    who
    lsmod
    cat /proc/cpuinfo
    cat /proc/meminfo

date komutu: Bu komut ile sistemin o anki saat ve tarih bilgisini öğrenebiliriz. Kullanımı aşağıdaki gibidir.

—–      date     şeklindedir.  —–

cal komutu: Bu komut ile bulunduğunuz ayı sistem 1 aylık takvim olarak önünüze döker. Bu komut parametre de alabilir. Herhangi bir yılın bir ayını görmek istiyorsanız aşağıdaki gibi bir komut yazmalısınız.

——-     cal      : Bu komut sistem tarihinin bulunduğu ayı 1 aylık veri halinde dönderir kullanıcıya….

——-      cal 5 1989  : Bu komut size 1989 yılının 5.ayını 1 aylık veri halinde gösterir.

uptime komutu: Bu komut kullanıcıya sistemin bağlı olduğu makinanın ne kadar süreden beri kesintisiz çalıştığını göstermeye yarayan bir komutdur. Bu komut kullanıcıya o anki saati,ne kadar süredir çalıştığını,sistemdeki aktif kullanıcı sayısını ve sistemin son dakikalardaki yük performansını dönderir. Kullanımı ve çıktısı aşağıdaki gibidir.



 

df komutu: Bu komut yardımı ile Disk kullanımı ile ilgili kullanıcıya ayrıntılı bilgiler sunulur. Bu komutun kullanımı ve çıktısı aşağıdaki gibidir.



 

du komutu: Bu komut yardımıyla girdi olarak verilen bir dizinin altında bulunan dizin,dosya yada klasörlerin disk üzerinde kapladıkları alana dair ayrıntılı rapor kullanıcıya sunar. Kullanımı ve çıktısı aşağıdaki gibidir.



 

free komutu: Bu komut ile Sistemdeki boş ve kullanılan bellek miktarları kullanıcıya sunulur. Kullanımı aşağıdaki gibidir.



 

whereis  komutu: Bu komut ile verilen bir dosyaya ait çalıştırılabilir dosya,kaynak dosyaların sistem üzerindeki yerlerini gösterir. Komutun kullanımı aşağıdaki gibidir.



which komutu: Bu komuta verilecek Linux komutunun sistem üzerinde bulunduğu yerin tam yolunu verir. Kullanımı aşağıdaki gibidir.



 

uname komutu: Bu komut ile -a şeklinde girilecek parametre ile sisteme ait çeşitli bilgiler verilir bunlar;makinenizin tipi, network host adı vb. bilgiler sunulur.Kullanımı aşağıdaki gibidir.



w komutu:Bu komut ile sistemde kim aktif ve ne yapıyor diye kullanıcıya gösterilir. Kullanımı aşağıdaki gibidir.



 

whoami komutu: Bu komut ile sistemde şuan log in olan kullanıcının kim olduğu belirtilir.Zaten komutun açılımıda Who am i şeklindedir.


hostname komutu: Bu komut girildiğinde kullanıcıya sistemin bağlı olduğu makinanın adı çıktı olarak verilir. Bu komutun kullanımı aşağıdaki gibidir.



 

time komutu: Bu komut ile belirli bir komutun ne kadar sürede gerçeklendiğini gösterir. Kullanımı aşağıdaki gibidir.



who komutu: Bu komut ile sistemde aktif olan kullanıcıları listelenir. Komutun kullanımı aşağıdaki gibidir.


 

lsmod komutu:Bu komut ile sistemde yüklenmiş olan bütün modüller hakkında kullanıcıya bilgiler sunulur. Komutun kullanımı aşağıdaki gibidir.



 

cat /proc/cpuinfo komutu: Bu komut ile sistemi yöneten merkezi işlem birimi (Cpu) nin çalışması hakkında ayrıntılı bilgi kullanıcıya sunulur. Komutun kullanımı aşağıdaki gibidir.

 

cat /proc/meminfo komutu: Bu komut ile sistemde bulunan RAM (Random Access Memory) in çalışması hakkında ayrıntılı bilgi kullanıcıya sunulur. Komutun kullanımı aşağıdaki gibidir.



 
“Bilginin elde edilmesi... bizi iyiye ulaştıracaktır.
Back to Top
kral View Drop Down
Administrator
Administrator
Avatar

Joined: 08-03-2006
Status: Offline
Points: 939
Post Options Post Options   Thanks (0) Thanks(0)   Quote kral Quote  Post ReplyReply Direct Link To This Post Posted: 09-01-2022 at 23:08
3: Process (Süreç) Yönetimi Komutları:

Linux Process yönetim komutlarına geçmeden önce Process kavramını ele alalım. Process: İşletim sistemleri üzerinde koşan programların parçalarından her birisine verilen addır. Processler o an koşan programın kodunu ve yaptığı işlevleri tutarlar.Processler bir çok alt görevi aynı anda yerine getiren çoklu threadlerden de oluşabilir. Genel olarak Processler aşağıdaki yapıları içerirler.

    Koşmakta olan bir Program
    Programla alakalı Asenkron bir işlev
    İşlemcinin belirlediği bir görev

Linux ta bulunan ve Süreçlerle alakalı olan veya Süreçlerin yönetiminde rol alan komutlar aşağıdaki gibidir.

    ps
    top
    kill
    killall
    bg
    fg
    pidof
    pgrep
    pstree
    fork
    getpid
    getppid
    exec
    wait
    pipe
    dup
    open
    close
    read
    write
    last
    lastcomm

Yukarıda bahsettiğim Süreç yönetimi komutlarını anlatmadan önce önemli bir komutu tekrar tekrar hatırlatmak istiyorum. Bu komut ” man ” komutudur. Bu komut ile işlevini duyduğumuz ancak çok ayrıntılı bir şekilde bilgi edinmek istediğimiz komutları öğrenebiliriz. Komutun işlevlerini ve aldığı parametreleri,bu parametrelerle kullanıldığında nasıl işlev gördüğünü ayrıntılı olarak kullanıcıya sunmaktadır.

Şimdi örnek olarak ”  lastcomm  ” komutunu öğrenmek için man komutumuza başvuruyoruz.Kullanımı ve çıktısı aşağıdaki gibidir.



ps komutu: Bu komut ile sistem üzerinde koşmakta olan tüm süreçleri ve bu süreçlerin process id leri kullanıcıya sunulur. Komutun kullanımı ve çıktısı aşağıdaki gibidir.



top komutu: Bu komut ile Linux sistemleri üzerinde koşmakta olan görevleri ve temel sistem durumunu ayrıca koşmakta olan programların harcadıkları bellek ve cpu miktarları kullanıcıya sunulur. Bu komutun kullanımı aşağıdaki gibidir.



 

kill komutu: Bu komut ile sistemde var olan processlerin id leri girilerek bir process sonlandırılabilir. Linux sistemlerde bir süreci sadece ve sadece en üstün haklara sahip olan root kullanıcısı silebilir.O yüzden ”  su  ” komutunu kullanıp root şifresini giriyoruz.Ardından root kullanıcısı olduğumuzda kill “Process id” si girilip bu süreç sonlandırılır. Komutun kullanımı aşağıdaki gibidir.



killall komutu: Bu komuta girilecek dizin parametresi ile dizin altındaki bütün processler sonlandırılabilir. Komutun kullanımı yukarıdakine benzer.

bg komutu: Bu komut bütün Linux dağıtımlarında mevcut olmayabilir. Ancak genel görevi sistemde durmuş olan bir görevi yada processi arka planda devam ettirir.Bunun dışında sistem üzerinde şuanda koşmakta olan görevleri listeler.

fg komutu: Bu komut sistem üzerinde durmakta olan bir süreci yada görevi ön plana çekerek koşmasını sağlar. Her Shell kabuğu bu komutu koşmaz.

pidof komutu: Bu komut ile sistem üzerinde mevcut olan bir programın işlem id sini çıktı olarak verir.

 

pgrep komutu:Bu komut ile şuanda koşan bir processin ve onunla birlikte belirtilen kritere göre olan processlerin id si kullanıcıya sunulur.Komutun kullanımı aşağıdaki gibidir.


pstree komutu: Bu komut sistem üzerinde koşan processleri bir ağaç olarak kullanıcıya sunar. Komutun kullanımı aşağıdaki gibidir.



fork komutu: Bu komut linux ve unix sistemlerde koşan bir processin bir kopyasını oluşturan komuttur. Süreç kopyalandıktan sonra parent-child olmak üzere iki süreç oluşur sistemde. Bu komut sistem üzerinde farklı bir işlevi gerçekleştirmek için genelde kullanılır. Böylece bu komut ile oluşan child process sistem üzerinde farklı işlevler görebilir.

getpid komutu: Bu komut ile kullanıcıya şuanki koşan processin id sini verir.

getppid komutu: Bu komut ile kullanıcıya şuanki koşan processin parent ının id sini verir.

exec komutu: Bu komut linux sistemlerinde bir processin farklı bir program olarak çalışmaya devam etmesini sağlar. Bu işlem sonrası processin id si ve kontrol bloğu değişmez. Exec komutu aldığı parametrelere ve gördüğü işlevlere göre 6 farklı şekilde çalışırlar.Bunlar ve aldıkları parametreler aşağıdaki gibidir.

int execl(const char *path, const char *arg0, … /*,(char *) 0 */);

int execv(const char *path, char *const argv[]);

int execle(const char *path, const char *arg0, … /*, (char *) 0, char *const envp[] */);

int execve(const char *path, char *const argv[], char *const envp[]);

int execlp(const char * file, const char *arg0, … /*, (char *) 0 */);

int execvp(const char *file, char *const argv[]);

wait komutu: Bu komut belli bir süreci beklemek için kullanılır. Genellikle sistem programlarken yazılan bash scriptler de kullanılır. Fork komutuyla oluşturulan child process in işleyişi tamamlandığında parent processi beklemek zorundadır. Bekletirken wait komutu kullanılır.

 

pipe komutu: Bu komut ile bir komutun çıktısını bir diğer komuta girdi olarak verebiliriz. Pipe kullanılırken ”  |  ” işareti kullanılır. Komutun kullanımı ve çıktısı aşağıdaki gibidir.



dup komutu: Bu komut ile Dosya tanıtıcısı olarak sistem üzerinde açık olan bir kanal oluşturur. Yada dosya tanıtıcısı çoğaltılır. Sistem programlamada bash scriptlerde çokça kullanılır. Kullanılan kanallar 3 türlüdür open,close,other şeklinde. Dup kumutuyla sistem üzerinde açık olan bir kanalın fd si dönderilir. Open kanalı açık ise fd=0,close ise fd=1 other ise fd=2 olarak kullanıcıya geri döner. Dup komutunun kendisiyle birlikte 2 tane daha çeşiti vardır. bunlar dup2 ve dup3 şeklindedir. Aldıkları parametreler aşağıdaki gibidir.

int dup(int oldfd);

int dup2(int oldfd, int newfd);

int dup3(int oldfd, int newfd,int flags);

open komutu:
Bu komut linux ve unix sistemlerinde bir Sistem çağrısı olarak geçer. Girilen bir dosya yolunu belirli bir duruma göre açabilir. Sadece dosyanın yolu belirtilirse bu dosya yolundaki dosyayı açar. Kullanımı ve aldığı farklı durumlardaki parametreler aşağıdaki gibidir.

int open(const char *pathname, int flags);

int open(const char *pathname, int flags, mode_t mode);

close komutu: Bu komut tıpkı open komutu gibi bir sistem çağrısıdır. Belirtilen bir dosya tanıtıcısını kapatır. Kullanımı ve aldığı parametre aşağıdaki gibidir.

int close(int fd);

read komutu:Sistem çağrısı olan read komutu ile belirli bir kanaldan bir data okunur. Kullanımı aşağıdaki gibidir.

read [-ers] [-a aname] [-p prompt] [-t timeout]

write komutu: Bu komut ile diğer kullanıcılara terminal aracılığıyla iletişim kurulabilir. Kullanımı aşağıdaki gibidir.

write user [ttyname]

 

last komutu: Bu komut ile geçmişte sisteme bağlanan tüm kullanıcıları ve onlar hakkında çeşitli bilgileri kullanıcıya sunar.Komutun kullanımı ve çıktısı aşağıdaki gibidir.



lastcomm komutu: Bu komut ile kullanıcıya önceden icra edilmiş tüm komutlar listelenir. Verilecek parametreye göre farklı çıktılar üretir. Bu parametreler kullanıcı adı,komut adı,dosya adı vb şeklindedir.
“Bilginin elde edilmesi... bizi iyiye ulaştıracaktır.
Back to Top
kral View Drop Down
Administrator
Administrator
Avatar

Joined: 08-03-2006
Status: Offline
Points: 939
Post Options Post Options   Thanks (0) Thanks(0)   Quote kral Quote  Post ReplyReply Direct Link To This Post Posted: 09-01-2022 at 23:08
4: Arama Komutları

Linuxta dosyaların içeriklerinde belirli patternleri aramak için belirli komutlar vardır.Bu komutları aşağıda maddeler halinde belirteceğim. Bu komutların dışında aynı işlevi gerçekleyen komutlar olabilir ancak ben en önemli gördüğüm komutları anlatıyor olacağım. Linux ta kullanılan Arama komutları aşağıdakilerdir.

    grep
    sed
    find
    locate

grep komutu: Linux kullanıcılarının en çok kullandığı avam tabiriyle haşir neşir olduğu bir komutdur. Açılımı ise Global Regular Expression Printer (evrensel düzenli ifade yazicisi) şeklindedir. Grep komutunun en temel işlevi Belirli bir  ifadeyi,kelimeyi yada patterni bir dosya içinde bir metin içinde aramasıdır. Bu komutu önemine binaen daha ayrıntılı anlatacağım. Aşağıda farklı şekillerde kullanılan grep örneklerini anlattım. Örnekleri uygulamanız daha erken öğrenmenizi sağlayacaktır.

1.  $ grep “Aranacak Pattern”   DosyaAdı  :   Belli bir patterni dosyada Aramaya yarar.




Yukarıdaki örnek KişiselBilgiler adlı dosyada “mehmet” ifadesi geçen satırları listelemeye yarar.

2.  $ grep -c “Pattern” DosyaAdı : Belirtilen dosyada Girilen patternle eşleşen satır sayısını döndürür.




Yukarıdaki örnekte “mehmet” ifadesi KişiselBilgiler adlı dosyada 4 satırda geçtiği için sonuç olarak 4 sayısını döndürmüştür.

3. $ grep -i “Pattern” DosyaAdı :  Girilen patternde büyük /küçük harf ayrımı yapmadan arama yapar.



 

Yukarıdaki örnekte küçük harfle aranan “deveci” patternini büyük küçük harf ayrımı yapmadan yaptığı aramayla eşleşen “DeVeci” adlı kelimeyi döndürdü.

4.  $ grep  -v “Pattern”  DosyaAdı  : Girilen patternle eşleşen Satırların Dışındaki Satırları listelemeye yarar.


                             

Yukarıdaki örnekte KişiselBilgiler Dosyasında “mehmet” ifadesi geçen satırların dışındaki satırlar listelenmiştir.

5. $  grep -r “Pattern” Dosya Adı: Girilen patterni recursive (öz yineleme) olarak Alt dosyalar dahil belirtilen dosyanın her yerinde arama yapar.




Yukarıdaki örnekte “Oracle” patterni deveci adlı dizinde ve onun içerdiği dosyalarda arama yaptı. Sonunda KişiselBilgiler adlı dosyada “Oracle” patternini buldu ve dosya adıyla beraber listeleme yaptı.

Not: grep ile Regular expressions (Düzenli ifadeler) dediğimiz ifadelerde çokça kullanılır. Aşağıda kullanım şekillerini ve ne işe yaradıklarına bakalım.

    grep ^ “Pattern” Dosya Adı :  ^ ifadesi ile Pattern de belirtilen Kelime yada Harf ile başlayan ifadeler listelenir.



    grep ^[a-z]  DosyaAdı :  Bu ifade de a-z arasındaki harflerle başlayan satırlar listelenir. [a-z] Yerine [A-Z] yada [0-9] gibi ifadelerde yazılabilir.

    grep “Pattern” $ DosyaAdı : Bu ifade de Patternle biten kelimeler listelenir. Kullanımı aşağıdaki gibidir.



sed komutu: Bu komut grep komutuna benzer bir komuttur. Komutun görevi metin dosyalarının içeriklerini belirtilen patterne göre değiştirip ekrana basar. Ancak değişiklik kaynak dosyaya yansımaz onu tekrar kaydetmelisiniz. Kullanım şekli aşağıdaki gibidir.



Yukarıdaki örnekte görüldüğü gibi “mehmet” geçen ifadeleri komut buldu onun yerine komut satırından girilen “muhammed” ifadesi geldi. Yalnız kaynak dosyasına bu yansımaz. O şekilde değiştirmek istiyorsanız Dosya komutlarında belirttiğim şekilde dosyaya kayıtlar yapabilirsiniz.

sed komutunun farklı parametrelerdeki işlevleri aşağıdaki gibidir.

    w parametresi ile dosyaya yazma yapılır.
    d parametresi ile satır silme işlemi yapılır.
    r parametresi ile bir dosya okunur.
    p parametresi ile satır ekrana basılır.

find komutu: Bu komut ile dosya arama işlemleri yapılır. Yani bu komut ile bilmediğimiz bir dizinin altındaki bir dosyayı bulabiliriz. Farklı kullanım şekli ve örnekleri aşağıdaki gibidir. Bu komut için root olmalısınız.

    find / -name “DosyaAdı” : Bu kullanımda sistemde Belirtilen bir Dosya Adı bulunur. Kullanımı aşağıdaki gibidir.



    find / -name  “DosyaAdı” *  : Burda belirtilen bir dosya adına benzer dosyalar bulunur.



not:find ve sed komutlarında da grep komutunda olduğu gibi regular expressions lar kullanılabilir.

locate komutu:
Locate de tıpkı find komutu gibi bir dosya arama komutudur. Fakat find komutundan daha hızlı çalışır ve çokça kullanılır. Find, realtime da arama yaptığı için biraz daha yavaştır ancak locate komutu daha önceden kataloglanmış bir veritabanından yada bellekten arama yapar. Bu yüzdendir ki locate komutu find komutuna göre çok hızlı sonuç üretir. Komutun kullanım şekilleri aşağıdaki gibidir.

    locate DosyaAdı : Bu şekilde sistemde belirtilen bir dosya adı hızlıca bulunup kullanıcıya sunulur.



    locate -i DosyaAdı: Bu şekilde kullanıldığında DosyaAdını büyük küçük harf ayrımı yapmadan karakterleri arar.




“Bilginin elde edilmesi... bizi iyiye ulaştıracaktır.
Back to Top
kral View Drop Down
Administrator
Administrator
Avatar

Joined: 08-03-2006
Status: Offline
Points: 939
Post Options Post Options   Thanks (0) Thanks(0)   Quote kral Quote  Post ReplyReply Direct Link To This Post Posted: 09-01-2022 at 23:09
5: Network Komutları

Linuxta Networktan bilgi alışverişi yapmak veya networktaki bilgisayarları öğrenmek için çeşitli komutlar vardır. Ayrıca networkta çeşitli ayarlamaları ve setlemeleride yine Linux network komutları sayesinde gerçekleştirebilirsiniz. Linux ta en çok kullanılan Network komutları aşağıdakilerdir.

    ping
    traceroute
    dig
    wget
    ifconfig
    host

ping komutu: Bu komut network üzerinde bulunan hostlara ICMP (internet control message protocol) ECHO_REQUEST paketi yollar ve bundan dönen paketleri kullanıcıya sunmaya yarar. ICMP hakkında ayrıntılı bilgi için bu yazımı okuyunuz. ping ile network kümesindeki hostların aktif olup olmadığını göndereceği yada göndermeyeceği 😀 paketlerden öğrenebiliriz. ping bir nevi networktaki hostları uyarma komutudur. Alacağı parametrelere göre ise network kümesi üzerindeki hostlardan çeşitli bilgiler öğrenebilir. Aşağıda bu komutun kullanımını bildiğiniz bir ip adresinden uygulayarak örneğini verdim.





Yukarıdaki örnekte paket gönderimi çok uzun sürdüğü için ben ctrl-c ile alışverişi durdurdum. Yinede gönderilen 3 paket hakkında bilgiler kullanıcıya sunduğu gibi kullanıcıya bu işlem ile ilgili ayrıntılı bilgi sunmaktadır.



Aşağıdaki örnekte ise eğer belli sayıda paket almak istiyorsak ”  -c   ” parametresini kullanarak yapacağız. Ben örnekte www.mehmetsalihdeveci.net adresinden 5 paket almak istediğimi belirttim örneğin çıktısı aşağıdaki gibidir.




Ping komutu ile hostname i belli olan bir sitenin adresinide öğrenebilirsiniz. Aşağıdaki örnekte www.mehmetsalihdeveci.net in ip adresini ping ile öğrendim.



traceroute komutu: Bu komut ile network kümesinde bir host a mesaj yada bilgi gönderdiğimiz zaman network kümesinde o hosta ulaşana kadar mesajın uğradığı hostlardan bilgi atmaya yarar. traceroute komutu Time to Live süresine göre çalışır. Time to live süresi bitince istenilen hosta ulaşmasa eğer veri geri döner. Traceroute komutunun kullanımı aşağıdaki gibidir.




not: traceroute komutu ping komutuna benzer farklı parametre kullanıldığında farklı bilgilerde kullanıcıya dönderebilir. Bunun için man traceroute yazarsanız terminale ayrıntılı parametreleri öğrenebilirsiniz.

dig komutu: Bu komut alan adı sorgulamalarında kullanılmaktadır. Windows ta bilenler için söylüyorum nslookup a benzer bir görevi vardır. Bu komutun kullanımı ve çıktısı aşağıdaki gibidir.



wget komutu: Bu komut ile internetten dosya vb. verileri indirmek için kullanılır. wget komutu http,https ve ftp gibi en çok kullanılan protokolleri desteklemektedir. Bu komutun kullanımı aşağıdaki gibidir. Blogumdan Linux kategorisindeki yazıları indireceğim.Komutun kullanımı ve çıktısı aşağıdaki gibidir.




ifconfig komutu: Bu komut ile Network taki IP konfigürasyonlarını yapılandırmak için kullanılır. Sistemde var olan Ethernet kartlarını listelemek ve yeniden düzenlemek içinde kullanılan bir komutdur. Bu komut ile IP,IPv6 ve MAC adreslerinide öğrenebilirsiniz.Komutun kullanımı basit ve sadedir çıktısı aşağıdaki gibidir.



host komutu:Bu komut genellikle IP konfigürasyonlarında kullanıldığı gibi Domain adından ip adreslerinide öğrenmede de kullanılır. Aşağıda komutun kullanımı ve çıktsı bulunmaktadır.


“Bilginin elde edilmesi... bizi iyiye ulaştıracaktır.
Back to Top
 Post Reply Post Reply

Forum Jump Forum Permissions View Drop Down



This page was generated in 0.281 seconds.