LFCS #1: Linux'ta Dosya İşleme için 'sed' Komutu Nasıl Kullanılır
Linux Vakfı, dünyanın her yerindeki bireylerin Linux sistemleri için temel ve orta düzey sistem yönetimi görevlerinde sertifika almalarına yardımcı olmayı amaçlayan yeni bir program olan LFCS (Linux Foundation Certified Sysadmin) sertifikasyonunu duyurdu.
Bu, çalışan sistemlerin ve hizmetlerin desteklenmesinin yanı sıra ilk elden sorun giderme ve analiz ve sorunları mühendislik ekiplerine iletmek için akıllı karar almayı da içerir.
11 Ağustos 2023'teki son revizyondan itibaren, alan adlarını ve yetkinlikleri, Microsoft tarafından resmi olarak açıklanan 11 Mayıs 2023 yürürlük tarihine uygun olarak titizlikle hesapladık. Linux Vakfı.
Bu serinin başlığı LFCS (Linux Foundation Sertifikalı Sistem Yöneticisi) Bölümleri 1'den 33'e kadar Hazırlık olacak ve aşağıdaki konuları kapsayacaktır: Sonraki başlıklar:
- Part 1
Linux'ta Dosyaları Değiştirmek İçin 'Sed' Komutu Nasıl Kullanılır
- Part 2
-
Linux'ta Vi/Vim Nasıl Kurulur ve Kullanılır
- Part 3
Linux'ta Dosyaları ve Dizinleri Sıkıştırma ve Dosya Bulma
- Part 4
Depolama Aygıtlarını Bölümlendirme, Dosya Sistemlerini Biçimlendirme ve Takas Bölümünü Yapılandırma
- Part 5
Linux'ta Yerel ve Ağ (Samba ve NFS) Dosya Sistemlerini Bağlama/Çıkarma
- Part 6
Bölümleri RAID Aygıtları Olarak Birleştirme – Sistem Yedeklemeleri Oluşturma ve Yönetme
- Part 7
Sistem Başlatma Sürecini ve Hizmetlerini Yönetme (SysVinit, Systemd ve Upstart)
- Part 8
Kullanıcı ve Gruplar, Dosya İzinleri ve Sudo Erişimi Nasıl Yönetilir
- Part 9
Yum, RPM, Apt, Dpkg, Aptitude ve Zypper ile Linux Paket Yönetimi
- Part 10
Temel Kabuk Komut Dosyalarını ve Dosya Sistemi Sorunlarını Gidermeyi Öğrenme
- Part 11
Vgcreate, lvcreate ve lvextend Komutlarını Kullanarak LVM Nasıl Yönetilir ve Oluşturulur
- Part 12
-
Yüklü Yardım Belgeleri ve Araçlarla Linux Nasıl Keşfedilir?
- Part 13
Grand Unified Bootloader (GRUB) Nasıl Yapılandırılır ve Sorun Giderilir
- Part 14
Linux Süreçlerinin Kaynak Kullanımını İzleyin ve Kullanıcı Bazında Süreç Sınırlarını Belirleyin
- Part 15
Linux Sistemlerinde Çekirdek Çalışma Zamanı Parametreleri Nasıl Ayarlanır veya Değiştirilir
- Part 16
Linux'ta SELinux veya AppArmor ile Zorunlu Erişim Denetiminin Uygulanması
- Part 17
Kullanıcılar ve Gruplar için Erişim Kontrol Listeleri (ACL'ler) ve Disk Kotaları Nasıl Ayarlanır?
- Part 18
Ağ Hizmetlerini Yükleme ve Önyükleme Sırasında Otomatik Başlatmayı Yapılandırma
- Part 19
Anonim Oturum Açmalara İzin Verecek FTP Sunucusunu Ayarlamaya Yönelik Temel Kılavuz
- Part 20
Temel Özyinelemeli Önbelleğe Alma DNS Sunucusu Kurulumu ve Etki Alanı için Bölgeleri Yapılandırma
- Part 21
MariaDB Veritabanı Sunucusunun Kurulumu, Güvenliği ve Performans Ayarlaması Nasıl Yapılır
- Part 22
-
Dosya Sistemi Paylaşımı için NFS Sunucusu Nasıl Kurulur ve Yapılandırılır
- Part 23
SSL Sertifikalı İsme Dayalı Sanal Barındırma ile Apache Nasıl Kurulur
- Part 24
Linux'ta Hizmetlere Uzaktan Erişimi Etkinleştirmek için Iptables Güvenlik Duvarı Nasıl Kurulur
- Part 25
Trafiği Statik ve Dinamik Olarak Yönetmek için Linux'u Yönlendiriciye Dönüştürme
- Part 26
Şifrelenmiş Dosya Sistemlerini Kurma ve Cryptsetup Aracını Kullanarak Değiştirme
- Part 27
Sistem Kullanımı, Kesintiler Nasıl İzlenir ve Linux Sunucularında Sorun Giderilir
- Part 28
Paketleri Kurmak veya Güncellemek İçin Ağ Havuzu Nasıl Kurulur
- Part 29
Ağ Performansı, Güvenliği ve Sorun Giderme Nasıl Denetlenir
- Part 30
Sanal Makineler ve Konteynerler Nasıl Kurulur ve Yönetilir
- Part 31
Projeleri Verimli Bir Şekilde Yönetmek için Git'in Temellerini Öğrenin
- Part 32
Linux'ta IPv4 ve IPv6 Adreslerini Yapılandırmaya Yeni Başlayanlar Kılavuzu
- Part 33
Ubuntu'da Ağ Bağlantısı ve Köprü Oluşturma İçin Yeni Başlayanlar Kılavuzu
Bu gönderi, LFCS sertifika sınavı için gereken gerekli alanları ve yeterlilikleri kapsayacak olan 33 eğitimlik serinin 1 Bölümüdür. Olduğu söyleniyor, terminalinizi çalıştırın ve başlayalım.
Linux'ta Metin Akışlarını İşleme
Linux, programların girdilerini ve çıktılarını karakter akışları (veya dizileri) olarak ele alır. Yeniden yönlendirmeyi ve kanalları anlamaya başlamak için öncelikle, aslında özel dosyalar olan (UNIX ve Linux'taki geleneksel olarak, veri akışları ve çevre birimleri veya aygıt dosyaları, aynı zamanda sıradan dosyalar olarak kabul edilir).
>
(yönlendirme operatörü) ile |
(boru hattı operatörü) arasındaki fark, ilkinin bir komutu bir dosyaya bağlarken, ikincisinin bir komutun çıktısını bir başkasına bağlamasıdır. emretmek.
command > file
command1 | command2
Yeniden yönlendirme operatörü dosyaları sessizce oluşturduğundan veya üzerine yazdığından, onu çok dikkatli kullanmalı ve hiçbir zaman boru hattıyla karıştırmamalıyız.
Linux ve UNIX sistemlerinde boruların bir avantajı, boruya dahil olan herhangi bir ara dosyanın bulunmamasıdır; ilk komutun stdout'u bir dosyaya yazılmaz ve ardından ikinci komut tarafından okunmaz.
Aşağıdaki alıştırmalarda “Mutlu Bir Çocuk” (anonim yazar) şiirini kullanacağız.
sed Komutunu Kullanma
sed adı akış düzenleyicinin kısaltmasıdır. Terime aşina olmayanlar için, bir akış düzenleyicisi, bir giriş akışında (bir dosya veya bir boru hattından gelen giriş) temel metin dönüşümlerini gerçekleştirmek için kullanılır.
Dosyada Küçük Harfi Büyük Harfe Dönüştür
sed'in en temel (ve popüler) kullanımı karakterlerin değiştirilmesidir. Küçük harf y
'nin her oluşumunu BÜYÜK HARF Y
olarak değiştirip çıktıyı ahappychild2.txt'ye yönlendirerek başlayacağız.
g
bayrağı, sed'in dosyanın her satırındaki tüm terim örnekleri için değiştirme işlemi yapması gerektiğini belirtir. Bu bayrak atlanırsa sed, terimin her satırda yalnızca ilk geçtiği yerin yerini alır.
Sed Temel Söz Dizimi:
sed ‘s/term/replacement/flag’ file
Örneğimiz:
sed ‘s/y/Y/g’ ahappychild.txt > ahappychild2.txt
Dosyadaki Word'ü Ara ve Değiştir
Özel bir karakteri (/
, \
, &
gibi) aramak veya değiştirmek isterseniz, terim içinde ondan kaçmanız gerekir. veya ters eğik çizgiyle yedek dizeler.
Örneğin, ve sözcüğünü ve işaretinin yerine koyacağız. Aynı zamanda satır başında ilk kelime bulunduğunda I
kelimesini Siz
ile değiştireceğiz.
sed 's/and/\&/g;s/^I/You/g' ahappychild.txt
Yukarıdaki komutta ^
(şapka işareti), bir satırın başlangıcını temsil etmek için kullanılan, iyi bilinen bir düzenli ifadedir.
Gördüğünüz gibi, iki veya daha fazla yerine koyma komutunu noktalı virgülle ayırarak ve kümeyi tek tırnak içine alarak birleştirebiliriz (ve içlerinde normal ifadeler kullanabiliriz).
Dosyadan Seçilen Satırları Yazdır
sed'in başka bir kullanımı da dosyanın seçilen bir bölümünü göstermektir (veya silmektir). Aşağıdaki örnekte, 8 Haziran'a ait /var/log/messages dosyasının ilk 5 satırını görüntüleyeceğiz.
sed -n '/^Jun 8/ p' /var/log/messages | sed -n 1,5p
Varsayılan olarak sed'in her satırı yazdırdığını unutmayın. Bu davranışı -n seçeneğiyle geçersiz kılabilir ve ardından sed'e dosyanın (veya borunun) yalnızca kalıpla eşleşen kısmını yazdırmasını (p ile gösterilir) söyleyebiliriz (İlk durumda 8 Haziran'da satırın başında ve ikinci durumda 1'den 5'e kadar olan satırlar dahil).
Son olarak, komut dosyalarını veya yapılandırma dosyalarını incelerken kodun kendisini incelemek ve yorumları dışarıda bırakmak yararlı olabilir. Aşağıdaki tek satırlık satır, (d
) boş satırları veya #
ile başlayan satırları siler (|
karakteri bir boole OR< değerini belirtir) iki normal ifade arasında).
sed '/^#\|^$/d' apache2.conf
benzersiz Komut
Uniq komutu, varsayılan olarak stdout'a yazarak bir dosyadaki yinelenen satırları raporlamamıza veya kaldırmamıza olanak tanır. uniq'in bitişik olmadıkları sürece tekrarlanan satırları algılamadığını unutmamalıyız.
Bu nedenle, uniq genellikle önceki sort (metin dosyalarının satırlarını sıralamak için kullanılır) ile birlikte kullanılır. Varsayılan olarak sort, ilk alanı (boşluklarla ayrılmış) anahtar alan olarak alır. Farklı bir anahtar alanı belirtmek için -k
seçeneğini kullanmamız gerekiyor.
Benzersiz Komut Örnekleri
du -sch /path/to/directory/* komutu, belirtilen dizindeki alt dizinler ve dosyalar başına disk alanı kullanımını insan tarafından okunabilir biçimde döndürür (aynı zamanda dizin başına toplamı da gösterir) ve çıktıyı boyuta göre, ancak alt dizine ve dosya adına göre sıralayın.
Boyuta göre sıralamak için aşağıdaki komutu kullanabiliriz.
du -sch /var/* | sort –h
uniq'e her satırın ilk 6 karakterini (-w 6)
kullanarak karşılaştırma yapmasını söyleyerek bir günlükteki olay sayısını tarihe göre sayabilirsiniz (burada tarih belirtilir) ve aşağıdaki komutla her çıkış satırının önüne oluşum sayısına göre (-c
) eklenir.
cat /var/log/mail.log | uniq -c -w 6
Son olarak, sort ve uniq'i (genellikle oldukları gibi) birleştirebilirsiniz. Bağışçıların, bağış tarihinin ve miktarının listesini içeren aşağıdaki dosyayı inceleyin. Kaç tane benzersiz bağışçının olduğunu bilmek istediğimizi varsayalım.
İlk alanı kesmek (alanlar iki nokta üst üste ile ayrılmıştır), ada göre sıralamak ve yinelenen satırları kaldırmak için aşağıdaki cat komutunu kullanacağız.
cat sortuniq.txt | cut -d: -f1 | sort | uniq
grep Komutu
grep komutu, metin dosyalarında veya (komut çıktısında) belirtilen bir düzenli ifadenin oluşumunu arar ve standart çıktıyla eşleşme içeren herhangi bir satırın çıktısını verir.
Grep Komut Örnekleri
Gacanepa kullanıcısı için /etc/passwd dosyasındaki bilgileri büyük/küçük harf göz ardı ederek görüntüleyin.
grep -i gacanepa /etc/passwd
Adı rc ile başlayan ve ardından herhangi bir sayı gelen /etc dosyasının tüm içeriğini gösterin.
ls -l /etc | grep rc[0-9]
tr Komut Kullanımı
Tr komutu stdin'deki karakterleri çevirmek (değiştirmek) veya silmek ve sonucu stdout'a yazmak için kullanılabilir.
sortuniq.txt dosyasındaki tüm küçük harfleri büyük harfe değiştirin.
cat sortuniq.txt | tr [:lower:] [:upper:]
ls –l çıktısındaki sınırlayıcıyı yalnızca bir boşluğa sıkıştırın.
ls -l | tr -s ' '
Kesme Komutu Kullanımı
Cut komutu, giriş satırlarının bölümlerini (stdin veya dosyalardan) çıkarır ve bayt sayısına (-b
seçeneği), karakterlere (-c
) dayalı olarak sonucu standart çıktıda görüntüler. ) veya alanları (-f
) kullanın.
Bu son durumda (alanlara dayalı olarak), varsayılan alan ayırıcı bir sekmedir ancak -d
seçeneği kullanılarak farklı bir sınırlayıcı belirtilebilir.
Kesme Komutu Örnekleri
Kullanıcı hesaplarını ve onlara atanan varsayılan kabukları /etc/passwd'den çıkarın (–d
seçeneği alan sınırlayıcısını ve –f<'yi belirtmemize olanak tanır
anahtarı hangi alanların çıkarılacağını belirtir.
cat /etc/passwd | cut -d: -f1,7
Özetle last komutunun çıktısının birinci ve üçüncü boş olmayan dosyalarından oluşan bir metin akışı oluşturacağız. gacanepa kullanıcısının oturumlarını kontrol etmek için ilk filtre olarak grep'i kullanacağız, ardından sınırlayıcıları yalnızca bir boşluğa sıkıştıracağız (tr -s ' '
).
Daha sonra, cut ile birinci ve üçüncü alanları çıkaracağız ve son olarak benzersiz görünen ikinci alana (bu durumda IP adresleri) göre sıralayacağız.
last | grep gacanepa | tr -s ' ' | cut -d' ' -f1,3 | sort -k2 | uniq
Yukarıdaki komut, arzularımıza göre filtrelenmiş veriler elde etmek için birden fazla komutun ve borunun nasıl birleştirilebileceğini gösterir. Bir komuttan diğerine aktarılan çıktıyı görmenize yardımcı olması için bunu parçalar halinde çalıştırmaktan da çekinmeyin (bu arada, bu harika bir öğrenme deneyimi olabilir!).
Özet
Her ne kadar bu örnek (mevcut eğitimdeki diğer örneklerle birlikte) ilk bakışta pek kullanışlı görünmese de, Linux'ta dosya oluşturmak, düzenlemek ve değiştirmek için kullanılan komutları denemeye başlamak için güzel bir başlangıç noktasıdır. Komut satırı.
Sorularınızı ve yorumlarınızı aşağıya bırakmaktan çekinmeyin; bunlar çok takdir edilecektir!
LFCS e-Kitabı artık satın alınabilir. Kopyanızı bugün sipariş edin ve sertifikalı bir Linux sistem yöneticisi olma yolculuğunuza başlayın!
Product Name | Price | Buy |
---|---|---|
The Linux Foundation’s LFCS Certification Preparation Guide | $19.99 | [Buy Now] |
Son olarak, lütfen bize küçük bir komisyon kazandırmak için aşağıdaki bağlantıları kullanarak sınav kuponunuzu satın almayı düşünün; bu, bu kitabı güncel tutmamıza yardımcı olacaktır.