$ rm dosya1 dosya2 dosya3 dosya4 dosya5 dosya6 dosya7 dosya8

Benzer belgeler
$ echo $PATH /sbin:/bin:/usr/sbin:/usr/bin:/usr/x11r6/bin: /usr/local/sbin:/usr/local/bin:/usr/games:.

Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos

Komut Penceresi ile Çalışmaya Başlamak

BİLGİ İŞLEM DERS 3. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

Komutlar (Devam) ls -a > deneme (ls -a komutunun çıktısı deneme isimli. ls -a >> deneme (ls -a komutunun çıktısı deneme

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur.

Aşağıda listelenen temel linux komutları bilgisayarınızın komut satırında çalıtırılacaktır.

Yrd. Doç. Dr. A. Burak İNNER

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.)

Linux altında komut satırında...

Regular Expressions ve grep, awk, sed ile Kullanımı

Temel Linux Eğitimi. İçindekiler

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

C Konsol ve Komut Satırı

Pardus 2013 te Metin Editörleri

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

Bigisayar Programlama

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Temel Linux Komutları

Veritabanı Tasarımı. Düzenli İfadeler

SIMAN KULLANIM KILAVUZU

ÜNİTE 9 ÜNİTE 9 MICROSOFT EXCEL - II TEMEL BİLGİ TEKNOLOJİLERİ İÇİNDEKİLER HEDEFLER

LİNUX. Dosyalar ve dizinler

B02.8 Bölüm Değerlendirmeleri ve Özet

ALGORİTMA VE PROGRAMLAMA I

Linux Dosya ve Dizin Yapısı

Chomsky Hiyerarşisi. Düzenli Diller ve Đfadeler 03/09/2014. Doç.Dr.Banu Diri

1.1. Yazılım Geliştirme Süreci

Php İle Mysql Veritabanından Bilgi Çekme

AÇIK KAYNAK İŞLETİM SİSTEMLERİ - BÖLÜM 1. Temel komutlar,dosya ve Dizin İşlemleri, Kullanıcı ve Grup İşlemleri

Hazırlayan: Cihan Aygül BT Rehber ÖĞRETMENİ

Kabuk Programlama (Bash)

C Dersleri Bölüm 3 : Program akışı

KABUK PROGRAMLAMA (shell programming- scripting)

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR

Linux Dosya Yapısı. Eren BAŞTÜRK.

C PROGRAMLAMA DİLİNE GİRİŞ

BOOTLOADER MANUAL DOCUMENT

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECİOĞLU 1

Kurumsal Güvenlik ve Web Filtreleme

Kurumsal Güvenlik ve Web Filtreleme

Özyineleme (Recursion)

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir.

Internet Programming II

TEMEL BİLGİ TEKNOLOJİLERİ KULLANIMI

Programlama Dillerinde Kullanılan Veri Tipleri

CYGWIN KURULUMU ve KULLANIMI

Yrd. Doç. Dr. A. Burak İNNER

Bilgisayarın Yapıtaşları

Hafta 7 C Programlama Diline Giriş ve C Derleyicisi

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Lambda İfadeleri (Lambda Expressions)

Dosya/Dizin İzinleri. Okuma (r) Yazma (w) Çalıştırma (x) Dosya içeriğini görebilir mi? (Klasörler için) dosya listesini alabilir mi?

SQL (Structured Query Language)

Windows 2000 veya XP kurarken dosya sistemini seçmeniz gerekir. Ya FAT32 dosya sistemini kullanırsınız ya da NTFS.

Linux e Giriş ve Dağıtımlar

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

12 TBT / WEB TASARIM ve PROGRAMLAMA ( Not 3 )

VERİ TABANI YÖNETİM SİSTEMLERİ I

Widows un çalışmasında birinci sırada önem taşıyan dosyalardan biriside Registry olarak bilinen kayıt veri tabanıdır.

Bir C programı C fonksiyonlarından oluşur. Bunlar arasında main() adı verilen ana fonksiyon daima olmalıdır. C fonksiyonları programı oluşturan

Kullanım şekli: cal <ay> <yıl> Bu komut ile takvim görüntülenebilir.

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi GÜVENLİK VE İZİNLER. BLM401 Dr.Refik SAMET

Web Tasarımının Temelleri

Dr. Fatih AY Tel: fatihay@fatihay.net

NFS (Network File System) & NIS (Network Information System) H. Coşkun Gündüz cgunduz@cs.bilgi.edu.tr

Genel Programlama II

Dr. Fatih AY Tel: fatihay@fatihay.net

Bilişim Teknolojilerine Giriş

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

5. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Apache üzerinden Red Hat 5 yüklenmesi

MEHMET ÇEKİÇ ORTAOKULU

Kazanımlar. Linux nedir? Linux dizin yapısı. Linux kabuğu nedir? Temel kabuk komutları. Bash programlama. Dosya işlemleri. Süreç yönetimi.

Regular Expressions Version 0.1

NESNEYE YÖNELİK PROGRAMLAMA

Bilgisayar donanım ve yazılım olmak üzere iki bölümden oluşur. Bilgisayarın çalışabilmesi için, ikisi de gereklidir.

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

Pardus ta Komutlarla Çalışmak

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

TEMEL BİLGİ TEKNOLOJİSİ KULLANIMI. Enformatik Bölümü

Mpuantor 2.7 Client Kurulumu

Üst düzey dillerden biri ile yazılmış olan bir programı, makine diline çeviren programa derleyici denir. C++ da böyle bir derleyicidir.

TEMEL BİLGİTEKNOLOJİLERİ

Daha önce bu işlemin iki tane dosya oluşturduğunu gördük. GecDenTest.aspx dosyasının source kısmında içeriğini inceleyecek olursanız en başta

Ağ Üzerinde MATLAB kurulum rehberi (Sunucu makine)

Bir üst dizinde yer alan prog1 programını çalıştırmak için aşağıdaki komutlardan hangisini çalıştırmak gerekir?

Fstab Rehberi. Ceren Çalıcı. Nisan, 2012

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Giriş Çıkış Birimleri:

Temel Kavramlar-2. Aşağıda depolama aygıtlarının kapasitelerini inceleyebilirsiniz.

Algoritmalar ve Programlama. Algoritma

Türkiye Linux Kullanıcı Grubu NFS & NIS. Kerem ERZURUMLU. kerem@linux.org.tr. 1. Linux ve Özgür Yazılım Şenliği.

How to ASP Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 29 Eki. 1 Kas. 2013

Css Stillerinin Nesneyi Etkileme Yolları Ve Sırası, Diez, Nokta, Yıldız, Class Css De Neyi İfade Eder.

Transkript:

Joker karakterler Günlük Linux kullanımında çok defa bir operasyonu tek seferde birden fazla nesne için çalıştırmak isteyebileceğiniz (rm gibi) durumlarla karşılaşabilirsiniz. Böyle durumlarda, aşağıdaki gibi bütün dosyaları komut satırına yazmak çok gereksizdir: $ rm dosya1 dosya2 dosya3 dosya4 dosya5 dosya6 dosya7 dosya8 Bu problemi çözmek için, Linux un kendi içinde yer alan joker karakter desteğinin getirdiği avantajdan yararlanabilirsiniz. Aynı zamanda (tarihsel nedenlerden dolayı) globbing olarak da adlandırılan bu destek, joker karakter modelini kullanarak tek seferde birden fazla dosyayı belirlemenize olanak sağlar. Joker karakter sözdizimi: * tanesi: * Joker karakterler arasında birkaç özel karakter kullanabilirsiniz; işte bunlardan bir Yıldız (asterix) * işareti sıfır veya daha fazla karakterle eşleşecektir. Bunun anlamı * olan yere herhangi bir şey gelebileceğidir. Örnekler: /etc/g* belirtimi /etc nin altında g ile başlayan tüm nesnelerle eşleşir. /tmp/my*1 belirtimi /tmp nin altında my ile başlayan ve 1 ile biten tüm nesnelerle eşleşir. Joker karakter sözdizimi:? Soru işareti? herhangi bir tek karakterle eşleşir. Örnekler: dosyam? belirtimi dosyam ile başlayıp bir tane daha karakter içeren nesnelerle eşleşir. /tmp/notlar?txt belirtimi hem /tmp/notlar.txt, hem /tmp/notlar_txt dosyasıyla eşleşir, eğer mevcutlarsa. Joker karakter sözdizimi: [] Bu joker karakterler? ile benzerdir, ancak daha fazla kesinlikte ayrım yapma şansını verir. Bu joker karakterleri kullanmak için, [] arasında eşlemek istediğiniz tüm karakterleri koymalısınız. Sonuçta elde edilen eşleşme bu karakterlerin herhangi birinin tek eşleşmesini verecektir. - (eksi) işaretini bir aralık vermek için kullanabilirsiniz, hatta birden fazla aralığı birlikte kullanabilirsiniz. Örnekler: dosyam[12] belirtimi dosyam1 ve dosyam2 ile eşleşecektir. Wildcard, çalışılan dizindeki karakterlerden en az bir tanesi mevcut olacak şekilde genişletilecektir. 1

[Cc]hange[Ll]og belirtimi Changelog, ChangeLog, changelog, ve changelog ile eşleşecektir. Gördüğünüz gibi, köşeli parantez joker karakterlerini kullanmak küçük / büyük harf eşleşmelerindeki kombinasyonları yakalamak için faydalı olacaktır. ls /etc/[0-9]* komutu /etc nin altında rakamla başlayan tüm dosyaları listeler. ls /tmp/[a-za-z]* komutu /tmp nin altında küçük ya da büyük harfle başlayan tüm dosyaları listeler. Joker karakter sözdizimi: [!] [!] yapısı [] yapısına benzemektedir. Ancak bu sefer [] parantezde yer alan karakterle eşleştirme yerine, parantezler içerisinde bulunmayan karakterler ile eşleştirme yapılmaktadır. Örnekler: rm dosyam[!9] Bu komut ismi dosyam9 olan dosya dışındaki tüm dosyaları yok eder. Joker karakter ile ilgili uyarılar Burada joker karakter kullanırken dikkat edilmesi gereken bazı noktalara değineceğiz. Bash wildcard ile ilgili karakterler (?, [, ], *) yazıldığı zaman buna göre özel bir işlem yapacağından, bir komuta parametre geçirirken bu karakterler kullanılacaksa dikkat edilmelidir. Örneğin, [fo]* ifadesini içeren bir dosya yaratmak istediğimizde aşağıdaki yazılı olan komut yapmak istediğimiz şeyi gerçekleştirmeyecektir: $ echo [fo]* > /tmp/yenidosyam.txt Eğer [fo]* modeli, dizin içerisinde herhangi bir dosya ile eşleşiyorsa, bu durumda /tmp/yenidosyam.txt dosyası içerisinde görmeyi beklediğiniz [fo]* ifadesi yerine bu eşleşen dosyaları göreceksiniz. O halde çözüm nedir? Bunun için gerekli çözümlerden birisi karakterlerinizi tek tırnak içerisinde yazmanızdır. Bu yaklaşım, kabuğa bu karakterler üzerinde hiç bir joker karakter işlemi yapmaması gerektiğini anlatır. $ echo [fo]* > /tmp/yenidosyam.txt Bu yaklaşımı kullandığınızda yeni dosyanız beklediğiniz gibi [fo]* karakter dizimini içerecektir. Alternatif olarak, ters bölü (backslash) kullanarak karakterlerinizin bash için, joker karakter yerine normal karakter anlamına gelmesini sağlayabilirsiniz. (escape characters) $ echo \[fo\]\* > /tmp/yenidosyam.txt 2

Yukarıda anlatılan her iki yaklaşımda aynı şekilde çalışacaktır. Ters bölü (backslash) karakterinin bu şekilde kullanımından da bahsettiğimize göre, eğer karakter olarak backslash (\) kullanmak istiyorsanız bunu tek tırnak içinde ya da \\ şeklinde yazabileceğinizi söyleyebiliriz. 3

man Her Linux sürümü, ihtiyacınız olan her türlü bilgiye ulaşmanızı sağlayan belgelerle donatılmıştır. Kullanıcı komutları, sistem çağrıları, subroutine ler, donanım, oyunlar, sistem yönetimi ve benzer konularda, bu belgelerden yardım alabilirsiniz. Bu belgelerdeki bilgilere nasıl ulaşacağınız, aşağıda açıklanmıştır: En çok kullanılan belge cinsi, man sayfaları denen, programcının rehberi olarak geçen belgelerdir. /usr/man dizini altında bulunurlar. Herhangi bir program veya komut için yardım almanız için, $ man <program veya komutun ismi> $ man rm Ekrana çıkan dokümandan çıkmak için q ya basmanız gerekir. Aşağıdaki tabloda man komutu ile elde edilebilecek yardım sayfaları içindeki konular ve bölümleri verilmiştir: Bölüm Konu 1 Kullanıcı Araçları (user tools) 2 Sistem Çağrıları (system tools) 3 C Kitaplık Çağrıları (C library tools) 4 Cihaz Sürücü Bilgisi (device driver information) 5 Konfigürasyon Dosyaları (configuration tools) 6 Oyunlar (games) 7 Paketler (packages) 8 Sistem Araçları (system tools) Aranan konu ile ilgili bilgi birden fazla bölüm içinde var olabilir, bu durumda her bölüm kendi alanı ile ilgili kısmını size aktarır. Örneğin C deki printf fonksiyonu ile ilgili olarak hem 3. hem de 1. bölümde bilgi bulunabilir. 1. bölümdeki açıklama komut satırı bakış açısından 3. bölümdeki açıklama ise fonksiyonun C dilindeki kullanımı açısından olacaktır. Bu bilgilere erişmek için: $ man 1 printf Veya $ man 3 printf yazılmalı. Belirli bir komutun tüm yardım sayfalarındaki tekrarını görmek ve bu konuda özet bilgi almak için, komutu aşağıdaki gibi, -k parametresi ile girmek gerekir. $ man -k printf 4

aprospos ve info man içinde herhangi bir kelimeyi de arattırabiliriz. Diyelim modemle ilgili bir sorun var ve çözmek için hangi programlara ihtiyacınız olduğunu bilmiyorsunuz. 'man modem' yazarsanız sonuç alamazsınız, çünkü bu isimli bir komut veya program mevcut değildir. Ancak içinde 'modem' kelimesi geçen man sayfalarının bir dökümünü almak işe yarayabilir. Bu işlem için, 'apropos' komutu kullanılır: $ apropos modem info komutu ile de komutlar ve konuları hakkında bilgi almak mümkündür. $ info emacs Bazı komutlar Aşağıda bazı temel Linux/Unix komutlarının kısa tanımları verilmiştir: *Mevcut işletim sisteminin isminin görüntülenmesi $ uname *O anki tarih ve zamanın görüntülenmesi $ date Fri Feb 25 12:55:29 MST 2003 *Takvimin öğrenilmesi $ cal * Belirli bir yıl ay için takvimin çağırılması $ cal 12 2003 *Sistemi aktif olarak kullanan mevcut kullanıcıların listelenmesi $ who *Mevcut kullanıcı isminin öğrenilmesi (ben kimim) $ whoami *Komut satırından birden fazla komutun devreye sokulması $ date;cal;whoami 5

Grep ve Düzenli İfadeler Düzenli ifadeler ( regex veya regexp de denir) yazı kalıplarını ifade etmek için kullanılan özel bir biçimdir. Linux sistemlerinde, arama ve değiştirme işlerinde olduğu kadar yazı kalıplarının bulunmasında da düzenli ifadeler kullanılır. Kaynaklar C ve Sistem Programcılar Derneği, 2002, Unix/Linux Sistem Programlama Ders Notları Çetin G., 1999, Linux İşletim sistemi, Seçkin Yayınevi İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü, 2007, Open Source Enterprise Centre GNU/Linux Sertifikasyon Programı Linux 101 Ders Notları Özbilen A., 2013, Linux Sistem ve Ağ Yönetimi, Pusula Yayınları Özkan Y., 2004, Linux İşletim Sistemi, Alfa Yayınları UYBHM, Temel Linux işlemleri, İTÜ Yazıcı M., 2014, Açık Kaynak İşletim Sistemleri Ders Notu, www.muratyazıcı.com 6