fbpx
  1. Doğanın 5. gücü X17 parçacığı
  2. Xcode Uygulama Yapmak
  3. USB Kullanım Şekilleri
  4. Şarj edilebilir karbondioksit batarya geliştirildi
  5. Minecraft Dünyasına Yolculuk
  6. İnternet Tarayıcısı Virüsü Silme
  7. Nesnelerin İnterneti
  8. Laravel Nedir ?
  9. Huawei ve Apple kapışması
  10. Apple, Siri ses kayıtları için özür diliyor
  11. Chocolatey GUI Nedir ?
  12. Hindistan’ın Ay görevi
  13. Windows Tor Browser Kullanımı
  14. Yazılım sektöründe işsizliğe neden olacak
  15. Sürü Drone Teknolojisi
  16. Anime karakterine dönüştüren Uygulama
  17. Winrar Parolası Nasıl Kırılır ?
  18. Türkiye Uzay Ajansı (TUA)
  19. Deepsound Nedir ?
  20. En Popüler Yapay Zeka Programlama Dilleri
  21. Wireshark 3.0.3 Nedir ?
  22. Netlimiter Nedir ?
  23. SoftBank, Apple ve Microsoft’un da dahil olduğu 108 milyar dolarlık Vision Fund 2 ile geliyor
  24. Google Cloud’ın yıllık geliri 8 milyar dolar seviyelerine kadar çıktı
  25. YouTube Premium, YouTube’daki reklam verenleri nasıl etkileyecek?
  26. Bankacılıkta Yeni Dünya Düzeni: Açık Bankacılık
  27. iOS 13: Kaçırmış olabileceğiniz yeni güvenlik ve gizlilik özellikleri
  28. Huawei’nin yeni işletim sistemi, Android yerine değil endüstriyel kullanım içindir
  29. TikTok Instagram tarzı bir ızgarayı ve diğer değişiklikleri test ediyor
  30. Authentictator Nedir ?
  31. Google, 15 Ekim’den başlayarak gölgelenmiş veri çalma Chrome uzantılarını kaldıracak
  32. Snapchat, küresel genişleme konusunda ciddileştiği için günlük 13 milyon aktif kullanıcı ekliyor
  33. Apple, Intel’in 5G modem birimini 1 milyar dolara satın almaya hazırlanıyor
  34. Userrecon Sosyal Ağlarda  Kullanıcı Adları Tanıma
  35. Shotcut Video editörü Nedir ?
  36. Facebook verilerimizin kontrolünü kaybetti. Şimdi 5 milyar dolar para cezası ödüyor!
  37. Amp nedir ?
  38. Netflix sadece 3$/ay mobil aboneliğini başlattı
  39. Facebook dünyayı haritalandırmak için AI destekli araçlar yayınladı
  40. RoboForm Şifre Yöneticisi Nedir ?
  41. Passpie Komut Satırı Şifre Yöneticisi Nedir ?
  42. EMP Silah Teknolojisi
  43. Windows Rainmeter Kullanımı
  44. Dedektif Pikachu, Warcraft’ı tüm zamanların en yüksek hasılatlı video oyun filmi olarak geçiyor
  45. Boston Dynamics Robotları Laboratuvar’dan Ayrılmaya Hazırlanıyor – Dünya Hazır Mı?
  46. Spotify, daha fazla hayran çekmek için bir uygulama içi Disney Hub’ı başlattı
  47. İnternet de ki Kişisel Verilerinizi Görün ve Silme Talimatı Oluşturun!
  48. Instagram, WhatsApp ve Facebook çöktü!
  49. Gri, yeşil ve pembe renkler varken, neden mavi beyaz bir Twitter’a sahipsin?
  50. Bedava Bitcoin Kazanma Yolları
  51. FaceApp #AgeChallenge, Twitter’ı yaşlı insanların fotoğraflarıyla dolduruyor
  52. Sabırla Beklenen YouTube Music, Türkiye’de Kullanıma Açıldı
  53. Google Haritalar şimdi 24 şehirde bisiklet paylaşma konumlarını gösteriyor
  54. Apple’ın özel podcast’ler için ödeme yapmayı planladığı bildiriliyor
  55. Hacker’lar Samsung’un web sitesi üzerinden Sprint hesaplarına girdiler
  56. Mercari’nin yeni Anında Ödeme özelliği, doğrulanan satıcıların bakiyelerini banka kartlarına dakikalar içinde aktarıyor
  57. Facebook’un Terazi Senatosu duruşmasından öne çıkanlar
  58. Mavi Balina oyunundan kurtulanlar anlatıyor: ‘Sanal ölüm tuzağı’
  59. Trump, Amerikan şirketlerinin Huawei’ye donanım satmasına izin verdi
  60. Dropbox Transfer, 100 GB’a kadar dosyaların doğrudan paylaşılmasını test ediyor.
  61. Alman devleti Office 365’i okullarda yasakladı, Microsoft tarafından yanıt çok gecikmedi.
  62. Google çalışanları “OK Google” sorgularınızı dinliyor; bunlardan sızdıran kayıtlar. (Dinlemeyi Kapatmak Mümkün)
  63. 5G Sağlık Tehlikesi
  64. Bilgisayar şifresi mucidi 93 yaşında hayata gözlerini yumdu!
  65. Tek tıkla IP adresinizi bulan platform: Eyep
  66. Merkez Bankası, kendi dijital parasını çıkarmayı planlıyor
  67. YouTube içerik üreticilerinin daha fazla gelir elde etmesini sağlayacak
  68. Sinemia Kapandı (SON DAKİKA)
  69. ABD Ordusu, 2020’de robot savaş araçlarını test edecek
  70. Microsoft, Mayıs 2019’da Yüzey Defteri 2’deki Windows güncelleştirmesini engelledi
  71. Facebook, Yeni Ürün Deneme Ekibi için eski Vine başkanını işe aldı
  72.  Blockchain Çalışma Yapısı
  73. Facebook Mark Zuckerberg’i kovuyor mu?
  74. Başbakan Günü’nde alışveriş yaparken, Amazon depo işçileri grevde olacak
  75. Hacker’lar Japon takası Bitpoint’ten 32 milyon $ değerinde kripto çaldı
  76. Snapchat, Netflix benzeri giriş sayfasını test ediyor
  77. QR Kod ile Wİfi Ağına Bağlanma
  78. Galaxy Note 10 USB-C kulaklık Aktif Gürültü Önleme özelliğine sahip olabilir
  79. YouTube Premium artık son videoları otomatik olarak indirebilir
  80. İşte Google’ın Gelen Kutusunun öleceği gün
  81. Google, kimlik avı saldırılarını engellemek için uygulama içi oturum açma işlemlerini yasakladı
  82. Google’ın doğal afet uyarıları yakında daha fazla görsel ayrıntıyla gelecek
  83. Snowden: Hükümetler Günümüzde Gücü Artırmaya Çalışıyor, İnsan Haklarına Daha Az Dikkat Ediyor
  84. TikTok, İngiltere’de çocukların verilerini ve güvenliğini nasıl ele aldığına dair soruşturuluyor
  85. Android için Spotify Lite 36 ülkede resmi olarak lanse edildi
  86. Mozilla, casus firması DarkMatter’ı Firefox’tan bloke etti ve kullanıcılara ‘önemli risk’ verdi
  87. Twitter cevapları gizlemenize izin verecek
  88. Facebook FTC’nin bileğine 5 milyar dolar tokat attığı bildirildi
  89. Archinaut, NASA’da 73 milyon $’lık fon sağlayarak 3D baskı yapan dev uzay aracı parçalarına yörüngede
  90. Facebook Terazi vergileri ve dolandırıcılık karşıtı işlerin nasıl olacağını…
  91. Windows Disk Bölümlendirme ve Biçimlendirme
  92. WhatsApp’a QR Kod ile Kişi Ekleme Özelliği Geliyor
  93. Ocenaudio 3.7.0 Nedir ?
  94. mIRC Nedir ?
  95. Proton Mail Nedir?
  96. Nedir Bu Bitcoin ?
  97. Windows 10 Depolama Alanı Kazanma
  98. CEH Nedir Nasıl Alınır ?
  99. DNA’da Veri Depolama Mümkünmü ?
  100. Android Emulator Nedir ?
  101. Android Studio Bluetooth İşlemleri #1: Etkinleştirme ve İzinler
  102. LoRa ve LoRaWAN Nedir?
  103. Her Şey 1 ve 0 Olabilir mi?
  104. Google Fuchsia OS gelişmeleri
  105. Synergy, Samsung’un One UI’sını Substratum temalarını kullanmanızı sağlar
  106. Krita Nedir? Nasıl Kurulur?
  107. Camtasia Studio Nedir ?
  108. Wondershare Filmora nedir ?
  109. GIMP Build nedir ?
  110. Kodi 18.3 nedir ?
  111. Atom 1.38.2 nedir ?
  112. Notepad++ nedir ?
  113. Apple TV + Video akış hizmeti kalite üzerinde odaklanmış
  114. Intel, akıllı telefonlar için 5G modemler yapmaktan vazgeçiyor
  115. İOS için Opera Touch tarayıcısı Kripto cüzdan entegrasyonu
  116. Windows 10 Kişiselleştirme
  117. Asus ROG Strix Scar II Süper Performansı
  118. Firefox ile Güçlü Parola Oluşturma
  119. Twitter’ın underrated listeleri özelliği sonunda biraz dikkat çekiyor
  120. Facebook’un aranabilir siyasi reklamlar arşivi artık küresel
  121. Facebook nihayet bu can sıkıcı bildirim noktalarını kapatmanıza izin verebilir!
  122. Daily Crunch: yeni Apple işletim sistemlerini önizliyoruz
  123. Microsoft, Onedrive depolama hizmetine ek bir güvenlik katmanı ekliyor
  124. Süperbilgisayarlarda ABD atağı
  125. Raspberry Pi 4 gives ile daha fazla bellek
  126. Laptoplarda 3 ekran teknolojisi
  127. Android Cihaz Sıfırlama Nasıl Yapılır ?
  128. Güneş Panelleri Nasıl Çalışır
  129. Connectify ile Kablosuz Ağ Paylaşma
  130. C Dili Hakkında
  131. Google Builder
  132. Kali Linux Işletim Sistemi Nedir ?
  133. Maltego Nedir Ve Nasıl Kullanılır?
  134. Python Nedir ?
  135. SOSYAL MÜHENDİSLİK NEDİR – NASIL KORUNUR ?
  136. Siber Güvenlik Meselesi
  137. C# – Nedir? Neler Yapılabilir?
  138. Algoritma Nedir?
  139. Yapay Zeka Nedir? nasıl işler
  140. Basit ve Ucuz Bilgisayar Soğutma Yöntemleri
  141. Windows Boot Hızlandırma Yöntemleri Nedir?
  142. USB ile Veri Kurtarma Yöntemi
  143. Cloud Sistemleri nelerdir ?
  144. Wi-Fi Jammer Nedir? Nasıl Kullanılır? ( Kali-Linux )
  145. Root Nedir ?
  146. İnternet Ağları Nasıl Çalışır?
  147. Ağ Atak önleme yazılımları nelerdir ?
  148. Bilgisayar Neden Kasıyor?
  149. Nasıl Format Atılır?
  150. NetCut Nedir? Ne İşe Yarar?
  151. Solus 3 Budgie
  152. Cinnamon 3.0
  153. Fedora 28 29 30 Workstation
  154. Solus 4.0 Fortitude – Budgie Desktop Edition
  155. Chakra Linux 2017
  156. VMware Workstation
  157. Windows Oyun Yürütme Hataları ve Genel Çözümler
  158. Windows Haftalık Bakım Programı
  159. VYSOR Nedir?
  160. I/O Extended 2019 & Cloud Study Jam
  161. Project İKY
  162. AnkaAktif Söyleşimiz
  163. Cankurtaran USB
  164. Windows Format Sonrası…
  165. Windows USB-DVD Kolay Format
  166. Windows Takılma Sorunlarının Nedeni
  167. Wifi Yerini Alacak Lifi Teknolojisi
  168. BörüOS Nedir?
  169. MacOS
  170. Hackuna
  171. LibreOffice
  172. Çevrimiçi Hayatınızda Güvende misiniz?
  173. Q4OS 2.4 Scorpion
  174. Peppermint OS 8 Respin
  175. ERP Nasıl Çalışır?
  176. Zorin OS 12.2
  177. Mageia 6
  178. Manjaro 18.0 KDE
  179. Linux Mint 19.1 Xfce Edition
  180. Lubuntu 18.10
  181. KdenLive
  182. BlankOn 11 Uluwatu
  183. Ubuntu 18.10 Cosmic Cuttlefish
  184. ArcoLinux 19.2
  185. Netrunner 19.01 Blackbird
  186. Deepin 15.8
  187. Linux Lite 3.8
  188. Fedora 29 Workstation
  189. MakuluLinux Core
  190. print() fonksiyonu ve yorum satırı
  191. Ruby’de Değişken Türleri
  192. Ruby’de Koşullar ve Döngüler
  193. Ruby’ de Veri Tipleri
  194. Ruby’de Operatörler
  195. Ruby De Veri Tipleri 2
  196. Ruby De Veri Tipleri 3
  197. Python IDE’leri ve Anaconda kurulumu
  198. Python Nedir ?
  199. kullanıcıdan veri alma nedir?
  200. Python koşul ifadeleri
  201. Google Stadia
  202. RUBY’E GİRİŞ
  203. LS Komutu bilenler için linux 101-5
  204. SEO programları
  205. Gelecekte ki Dünya
  206. Geleceğin Ulaşım Araçları
  207. Grafen Teknolojisi
  208. Yapay Zeka Komplo Teorisi Mi?
  209. Kendimizi Hackerlardan Nasıl Koruruz?
  210. Mikroçip İmplant Edilen İnsanlar Çok da Uzakta Değiller!..
  211. SEO Nedir?
  212. Sanayi 5.0
  213. QR kodu Nedir?
  214. SOSYAL MUHENDİSLİKTE PSİKOGRAFİ VE DEMOGRAFİ 1
  215. LS Komutu bilenler için linux 101-4
  216. Akademisyen Yapay Zeka: BİNA48
  217. Siber Güvenlik Kavramları
  218. Kripto para cüzdanları
  219. Robotlaşan Dünya
  220. Siber Güvenlik uzmanı
  221. WhatsApp Görüntülü Konuşmadaki Zafiyet
  222. Yapay Zeka, Makine Öğrenimi ve Derin Öğrenme Arasındaki Farklar
  223. Otonom Teknolojisi
  224. En popüler WordPress eklentileri
  225. SİBER SALDIRI NEDİR ?
  226. Temel Linux Terminal Komutları – 1
  227. Yapay Zeka ve Robotlar İnsanlar İçin Tehlike mi?
  228. Kripto para madenciliği & Kripto para Virüsü
  229. Python Dili neden önemli
  230. Whatsapp ve Bip Karşılaştırması
  231. YAPAY ZEKA
  232. Android ve iOS Farkları
  233. WordPress Güvenlik Önlemleri
  234. Sunucu Portları
  235. Proxy nedir?
  236. Parola Kırma Saldırıları
  237. VPN Nedir?
  238. Softaculous kurulum İşlemleri
  239. Bulut Bilişim’de Güvenlik
  240. XSStrike v2.0 Gelişmiş XSS Dedektörü ve Exploit Aracı
  241. Kodlama Bilmeyenler İçin Web Tasarımı 2. Bölüm
  242. Wifislax işletim sistemi
  243. Kodlama Bilmeyenler İçin Web Tasarımı
  244. Meltdown ve Spectre Güvenlik Açığı Nedir?
  245. İşlemciler Nedir?
  246. Bulut Bilişim (Cloud Computing)
  247. (Ransomware)Fidye Yazılımı Nedir,Nasıl Korunulur?
  248. Bluray disk Nedir
  249. Drone Nedir ve Hangi alanda Kullanılır?
  250. HDD ve SSD Nedir ve Arasındaki Farklar Nelerdir?
  251. LS komutu bilenler için linux 101 – 3
  252. Chroot Nedir ?
  253. WiPi Hunter Zararlı Kablosuz Ağ Saldırılarının Tespit Edilmesi
  254. Windows’da CMD Komutunu Kullanarak Herhangi bir Sürücüde Gizlenmiş Virüs Tespiti?
  255. Arduıno ve Raspberry nedir. Arasındaki farklar nelerdir?
  256. FTP Portundan İstismar 21/TCP/OPEN
  257. Keylogger Nedir?
  258. Purple (Mor Takım) Teaming Nedir?
  259. Programlanabilir USB Cihazlar (BadUSB) Nedir ?
  260. Non-Interactive Shell den Interactive Shell e Geçiş
  261. Wireshark
  262. Kuantum Bilgisayar Geleceğin teknolojisi
  263. LS komutu bilenler için linux 101-2
  264. Hackerların Kullandığı Mail Servisleri
  265. BitHumb Hırsızlığı
  266. KeePassXC Nedir ?
  267. Yapay Zeka Dünyasının İlk Psikopatı: NORMAN
  268. EZsploit Kullanımı
  269. Domain (Alan Adı) ve Hosting Nasıl Alınır?
  270. UFONet Kullanımı
  271. KRİPTOLOJİ’YE GİRİŞ (2)
  272. DoS / DDoS Saldırı ve Tespit Araçları
  273. Microsoft’dan Yazılım Dünyasına Bir Yenilik Daha
  274. IOT NEDİR?
  275. BASH NEDİR ?
  276. DZGEN-Penetrasyon Test Tool
  277. Fsociety Hacking Tools Pack
  278. GitHub Satıldı. Peki Ya Sonra?
  279. STEGANOGRAFİ NEDİR ?
  280. VPN (Virtual Private Network) Sanal Özel Ağ Hakkında Her Şey
  281. KRİPTOLOJİ’YE GİRİŞ (1)
  282. SNİFFER NEDİR? SNİFFER ARAÇLARI NELERDİR?
  283. DHCP IP HAVUZU TÜKETME
  284. KİSMET PAKET İÇERİĞİ
  285. WPHUNTER NEDİR?
  286. NMAP Nedir ? Nasıl Kullanılır ?
  287. Sn1per ile information gathering
  288. ls komutunu bilenler için linux 101
  289. SHODAN
  290. Dork
  291. KALI LINUX TOR BAGLANTISI
  292. Linux Dosya Sistemi Yapısı
  293. Mac adresi nasıl değişir ?
  294. HONEYPOT NEDİR ?
  295. Yazılımda Algoritma Mantığı Nedir?
  296. Gelişmiş MITM Framework : Xerosploit
  297. Sosyal Mühendislik Nedir?
  298. DHCP Servisi Üzerinden Saldırı Çeşitleri
  299. PROGRAMLAMAYA GİRİŞ
  300. İKE-SCAN Nedir?
  301. TheFatRat Kullanımı
  302. WAScan
  303. Diggy Nedir?
  304. Metasploitable Nedir?
  305. REDHAWK
  306. Python Programlama 1- Kurulum
  307. VoIP Nedir?
  308. (PENETRASYON) SIZMA TESTİ NEDİR?
  309. Şifre saldırıları (Password Attack)
  310. BranchScope Zafiyeti
  311. XSS (Cross Site Scripting)
  312. Bilgisayar Bileşenlerini Tanıyalım
  313. Bankaya gitmeden, bankayı soyuyorlar
  314. Hackerler, petrokimya şirketini havaya uçurmaya çalışmış!
  315. Casusluğa karşı en güvenli 5 mesajlaşma uygulaması
  316. Rusya olimpiyatları hackledi; Kuzey Kore’nin üstüne attı
  317. Rus hackerler, Almanların bilgi ağına sızmış!
  318. Vega Nedir ?
  319. Sniffing Nedir ? Korunma yöntemi
  320. Dork nedir? Nerelerde kullanılır? Nasıl yönetiriz ?
  321. Bilgisayar (PC) Nedir? Nerden Gelmiştir?
  322. ReconDog
  323. Kali Linux-Sqlmap Kullanımı
  324. TOP 7 WEB PENETRASYON TEST ARAÇLARI
  325. Cobalt Strike Nedir?
  326. Cobalt Strike Kullanımı
  327. SocialFish
  328. KALİ LİNUX KURULUMU
  329. Bilgi Güvenliğinin En Zayıf Halkası İnsan Faktörü
  330. Medyanın Siber Güvenlik Konusundaki Eksiklikleri
  331. Linux sistem iyileştirici ve izleme uygulaması Stacer!!!
  332. Kismet
  333. MUCYB3R CTF (ÇÖZÜMLERİ)
  334. Linux üzerinde “testdisk” uygulamasını kullanarak veri kurtarma veya görüntüleme!
  335. SQL Injection(SQLI) Nedir? -1
  336. TCP/IP
  337. Nmap nedir? Nasıl Kullanılır?
  338. Linux Temel Komutlar
  339. chmod 2
  340. Siber Genel Notlar
  341. Kali ve Parrot ekran parlaklığı sorunu çözümü…
  342. Google Chrome Kali Linux’e Kurulum
  343. Chmod 1
  344. Bireysel Siber Güvenlik
  345. Linux PDF Cenneti
  346. Kali Linux Komutlar
  347. Temel Linux Komutları
  348. However a small line
  349. Made open likeness
  350. Had grass morning
  351. Kismet
  352. Wordlist
  353. Said could convince her and
  354. Medusa ile Brute Force saldırıları
  355. Slowloris HTTP Dos Attack
  356. DMİTRY
  357. Simple and regular than
  358. Pronunciation more common
  359. To achieve this it would be necessary
  360. Evening be whose seasons
  361. Their pronunciation and their most
  362. Heaven and earth seem
  363. When darkness overspreads
  364. Then she continued her way
  365. The breath of that universal love

Dosya Sistemi Hiyerarşi Standardı

Dosya Sistemi Hiyerarşi Standardı linux sistemi üzerindeki bir dizinin planlamasını belirleyen bir belgedir. D.S.H.S’ı, dağıtım-bağımsız yazılım geliştirmeyi daha basit hale getirmek için ortak bir planlama sağlamak amacıyla ortaya atılmıştır. D.S.H.S aşağıdaki dizinleri belirlemektedir. (Direk olarak D.S.H.S spesifikasyonundan alınmıştır)

 

/ (kök -root- dizini)
/boot (açılış yükleyiciye -boot loader- ait statik dosyalar)
/dev (aygıt dosyaları)
/etc (üzerinde çalışılan -host- makinaya ait sistem konfigürasyonu)
/lib (paylaşılan temel kütüphaneler ve çekirdek modülleri)
/mnt (bir dosya sistemini geçici olarak bağlamak için bağlantı noktası)
/opt (Sonradan eklenebilen -add-on– uygulama yazılım paketleri)
/sbin (gerekli ikili/çalışabilir -binary- sistem dosyaları)
/tmp (geçici dosyalar)
/usr (ikincil hiyerarşi)
/var (değişken bilgiler)

İki Bağımsız D.S.H.S Kategorisi:

D.S.H.S planlama belirlemesi iki bağımsız dosya kategorisi olduğu fikrini temel alır; paylaşılabilir paylaşılamaz, ve değişken – statik. Paylaşılabilir bilgi ana makinalar (hosts) tarafından paylaşılabilir. ancak paylaşılmayan bilgi verilen ana makinaya özgüdür (konfigürasyon dosyaları gibi). Değişken bilgi
düzenlenebilir ve değiştirilebilirken statik bilgi değiştirilemez (fakat bu kural sistem kurulumu ve bakımı için geçerli değildir.)
Aşağıdaki tablo, bu kategoriler içine girebilecek dizin örnekleri ile bu 4 olası kombinasyonu özetlemektedir. Yine bu tablo da D.S.H.S’den alınmıştır.

+———+—————–+————-+
|            | shareable      | unshareable |
+———+—————–+————-+
|static    | /usr              | /etc           |
|            | /opt              | /boot         |
+———+—————–+————-+
|variable | /var/mail        | /var/run     |
|            | /var/spool/news | /var/lock|
+———+—————–+————-+

 

/usr dizinindeki ikincil hiyerarşi

/usr altında, root dosya sistemine çok benzeyen ikincil bir hiyerarşi göreceksiniz. Makina açıkken /usr dizinin olması gerek şart olmadığından bu dizin bir ağ üzerinde paylaşılabilir (”paylaşılabilir”) ya da bir CD-ROM içinden bağlanabilir (”statik”). Bir çok Linux kurulumunda /usr dizinin paylaşımı kullanılmasa
da root daki birincil hiyerarşi ile /usr deki ikincil hiyerarşi arasındaki farkı gözetmenin faydasını algılamak çok önemlidir.
Burada D.S.H.S’si ile ilgili söylenecekler bu kadardır. Dökümanın kendisi oldukça kolay anlaşılır olduğundan daha ayrıntılı bilgi için kullanabilirsiniz. Eğer dökümanı okursanız Linux D.S.H.S’si hakkında daha bir çok şey öğreneceğinizin kesin olduğunu söyleyebiliriz.

Dosyaları bulmak

Linux sistemleri içlerinde yüzlerce dosya barındırmaktadır. Her ne kadar bu dosyaların yerlerini kaybetmeyecek kadar usta olsanız bile, büyük bir ihtimalle bir tanesini bulmak için arasıra yardıma ihtiyaç duyacaksınız. Linux’te dosyaları bulmak için birkaç tane farklı araç yer almaktadır. Aşağıdaki konu başlıkları bu araçları göstermekte ve işiniz için gerekli olan doğru aracı bulmanıza yardımcı olmaktadır.

PATH

Bir programı komut satırında çalıştırdığınızda, kabuk aslında bir grup dizin arasında yazdığınız komutu aramaktadır. Örneğin, ls yazdığınızda, kabuk gerçekte bu komutun /usr/bin altında yer aldığını bilemez.
Onun yerine dizinlerin tutulduğu ve birbirlerinden iki nokta ile ayrıldığı PATH çevre değişkenine başvurur. PATH’in içinde yazılı olan değeri görmek için aşağıdaki gibi yazabiliriz:

 

PATH değişkeninin sahip olduğu bu değere göre (sizdeki değişkenin değeri farklı olabilir, kabuk yazılan ls komutu için öncelikle /usr/local/bin daha sonra /usr/bin altında arama yapacaktır. Büyük bir ihtimalle ls /usr/bin altında yer almaktadır, bu yüzden kabuk burada komut arama işlemini bitirecektir.

PATH’i düzenlemek

Elemanlar atayarak kendi PATH değişkeninizi değiştirebilirsiniz:

Ayrıca, her ne kadar mevcut olan PATH değişkenini kullanmak kadar kolay olmasa da PATH değişkeni içerisinden bazı elemanları silmeniz de mümkündür. Bunun için en iyi yol, olmasını istediğiniz yeni PATH değerinin yazmaktır:

”which” hakkında her şey

Aradığınız programın PATH ile verilen dizinlerden birinde olup olmadığını which komutu ile bulabilirsiniz.
Örneğin, aşağıdaki komut ile Linux sistemimizin sağduyuya sahip olup olmadığını sorgulayabiliriz:

Aşağıdaki örnekte ise ls komutunun nerede bulunduğunu görebiliriz:

Son olarak -a seçeneğine dikkat etmelisiniz. Bu seçenek kullanıldığında which komutu PATH değişkeninde tanımlı tüm dizinlerde aradığınız programın olup olmadığını gösterir:

Eğer bir programın yerini öğrenmek dışında onunla ilgili daha çok bilgiye erişmek istiyorsanız whereis komutunu denemelisiniz:

Buradan görürüz ki ls programı iki dizinde bulunmaktadır, /bin and /usr/bin. Buna ek olarak /usr/share/man dizininde de ls ile ilgili bir man sayfası olduğu bilgisini ediniriz. man ls yazdığınızda karşınıza gelen sayfa yukarıda belirtilen sayfadır. whereis aynı zamanda kaynak arama, alternatif arama yolları tanımlama ve sıradışı girdileri arama gibi özelliklere de sahiptir. Detaylı bilgi için lütfen whereis man sayfasını inceleyin.

find

find alet çantanızdaki araçlardan biridir. find komutu ile artık sadece program dosyaları ile sınırlı değilsiniz, her türlü dosyayı çok çeşitli kriterlere göre arayabilirsiniz. Örneğin /usr/share/doc dizini ve alt dizinlerinde README dosyasını bulmak için şu komutu vermeniz yeterlidir.

find ve joker karakterler

-name parametresine değer geçerken dosya açılımındaki (glob) joker karakterleri kullanabilirsiniz ancak bu durumda onları çift tırnak içine almanız veya önlerine ters bölü (backslash) koymanız gerekir (ki bash tarafından açılmayıp find komutuna oldukları gibi gönderilebilsinler). Örneğin uzantıya sahip README dosyalarını bulmak için şu komutu verebiliriz:

find ile küçük büyük harf ayrımı yapmadan aramak

Elbette arama yaparken büyük küçük harf ayrımı yapmak istemeyebilirsiniz:

Veya daha basit olarak:

Gördüğünüz gibi -iname seçeneği büyük küçük harf ayrımını ortadan kaldırır.

find ve düzenli ifadeler

Eğer düzenli ifadelere alışıksanız -regex seçeneğini kullanarak belli bir kalıpla eşleşecek şekilde dosya
isimlerini arayabilirsiniz. -iname seçeneğine benzer şekilde -iregex seçeneği ile de büyük küçük harf ayrımı
yapılmasını engelleyebilirsiniz.

find ve türler

-type seçeneği ile belli tipte dosyalar üzerinden arama yapabilirsiniz. Bu seçeneğe geçebileceğiniz argümanlar şunlardır: b (blok cihazı), c (karakter cihazı), d (dizin), p (isimlendirilmiş boru), f (normal dosya), l (sembolik bağlantı) ve s (soket). Örneğin /usr/bin dizinindeki vim sözcüğünü içeren sembolik linkleri aramak için:

find ve ‘mtime’lar

-mtime seçeneği dosyaları son güncelleme zamanlarına göre aramanızı sağlar. mtime seçeneğine verilen değer 24-saatlik zaman periyodu formatındadır ve genellikle + (verilen zamandan sonra) veya – (verilen zamandan önce) ile kullanılır. Örneğin şu senaryoya bir bakalım:

Son 24 saat içinde oluşturulmuş dosyaları arayabilirsiniz:

Veya içinde bulunduğunuz 24 saatten önce oluşturulmuş dosyaları arayabilirsiniz:

-daystart seçeneği

Eğer ek olarak -daystart seçeneğini de kullanırsanız zaman periyodları 24 saat öncesinden değil günün başlama anından başlar. Örneğin dün ve evvelki gün oluşturulmuş dosyaları listelemek için:

-size seçeneği

-size seçeneği dosyaları büyüklük kriterine göre aramanızı sağlar. Aksi belirtilmediği sürece -size seçene ğine 512-byte’lık bloklar cinsinden büyüklük verildiği kabul edilir ancak bunun sonuna bir takı eklemek işleri kolaylaştırabilir ve daha doğal kılabilir. Kullanabileceğiniz takılar şunlardır: b (512-byte’lık blok), c (byte), k (kilobyte), ve w (2-byte’lık sözcük). Bunlara ek olarak + öneki ile verilen büyüklükten daha büyük dosyaları ve – öneki ile de daha küçük dosyaları arayabilirsiniz. Örneğin /usr/bin dizini içinde boyu 50 byte’tan küçük olan dosyaları bulmak isterseniz:

Bulunan dosyaların işlenmesi

Pekçok değişik kritere göre arayıp bulduğunuz onca dosya ile ne yapacağınızı merak ediyor olmalısınız! find komutu bulduğu dosyalar üzerinde işlem yapma kabiliyetine de sahiptir ve bunun için -exec seçeneğinden faydalanır. Bu seçenek argüman olarak ; ile sonlandırılan ve çalıştırılabilir bir komut alır ve her {} gördüğü-yere de bulmuş olduğu dosya ismini koyarak ilgili komutu çalıştırır. Bunun anlamanın en kolay yolu şu örneğe bakmak:

Gördüğünüz gibi find komutu bir hayli güçlü bir komuttur. UNIX ve Linux’un yıllarca süren geliştirilmesi boyunca bu komut da geliştirilmiştir. find komutunun daha pek çok faydalı seçeneği vardır. İlgili man sayfasında bunları bulabilirsiniz.

Locate

Şimdiye dek which, whereis ve find komutlarını ele aldık. find çalışırken biraz vakit geçtiğini farketmişsinizdir çünkü üzerinde her dizine tek tek girip bakmak zorundadur. locate komutu ise bir veritabanını kullanarak işleri biraz hızlandırabilir. Bu komut yol isminin herhangi bir kısmı ile eşleşme yapabilir sadece dosya ismine bakmak zorunda değildir. Örneğin:

updatedb kullanımı

Pekçok Linux sistemi periyodik olarak veritabanını güncelleyen bir süreç (process) çalıştırır. Eğer sisteminiz yukarıdaki komuta aşağıdaki gibi bir hata ile cevap verirse o zaman bir veritabanı oluşturmak için uptadedb komutunu çalıştırmanız gerekir:

updatedb komutunun işini tamamlaması uzun bir süre alabilir. Eğer gürültücü bir harddiskiniz varsa tüm dosya sistemi indekslenirken başınız epey ağrıyabilir.

slocate

Pek çok Linux dağıtımında locate komutu yerine artık slocate komutu kullanılmaktadır. Genellikle locate isimli bir sembolik bağlantı olduğu için hangisini kullanayım diye tereddüt etmenize gerek yoktur. slocate ”secure locate” yani ”güvenli locate” anlamına gelmektedir. Bu komut kullandığı veritabanında dosya ve dizin izinlerini de depolar ve böylece normal kullanıcılar erişim izninine sahip olmadıkları dizine bakamazlar. slocate komutunun kullanım şekli locate komutunda olduğu gibidir ancak çıktı bilgisi komutu çalıştıran kullanıcıya göre değişebilir.

Süreç (process) Kontrolü

xeyes’ı başlatmak

Süreç kontrolünü öğrenmek için önce bir süreç başlatalım:

$ xeyes -center red

xeyes penceresinin birden açıldığını ve kırmızı gözlerin fareyi takip ettiğini göreceksiniz. Bu arada bir şey daha farkedeceksiniz: Komut satırına dönmediğinizi.

Süreci durdurmak

Komut satırına geri dönebilmek için Control-C tuş kombinasyonuna basmalısınız (genellikle Ctrl-C veya Ĉ şeklinde gösterilir):

bash komut satırına geri döndünüz ancak xeyes penceresi de kayboldu. Aslında işi yapan süreç tamamen sonlandırılmış, öldürülmüş durumda. Control-C ile süreçi öldürmek yerine Control-Z ile durdurabilirdik:

Şimdi gene bash komut satırına döndünüz ama bu sefer xeyes penceresi durması gereken yerde duruyor. Ancak fare ile oynarsanız göreceksiniz ki gözler sizi takip etmiyor artık, donup kalmış durumdalar.
Eğer xeyes penceresi üzerine başka bir pencereyi sürükleyip sonra çekerseniz göreceksiniz gözler yeniden çizilmiyor bile. Süreç hiçbir şey yapmıyor şu anda yani ”Durmuş” (Stopped) halde.

fg ve bg

Süreci ”durdurulmuş olmaktan çıkarmak” ve yeniden çalışır hale getirmek için onu bash komutlarından biri olan fg komutu ön plana çekebiliriz:

Şimdi de yine bir bash komutu olan bg ile süreci arkaplanda çalıştıralım:

Harika! xeyes süreci şu anda arkaplanda çalışıyor ve bizim de karşımıza kullanabileceğimiz bir komut satırı geldi.

“&” Kullanımı

Eğer xeyes’ı doğrudan arkaplanda çalıştırmak isteseydik (Control-Z ve sonra da bg kullanmak yerine), xeyes komutunun sonuna ”&” (ampersand) eklememiz yeterli olacaktı:

Birden çok sayıda arkaplan süreci

Şimdi arkaplanda bir kırmızı ve bir de mavi xeyes sürecimiz var. Bunları bash komutlarından biri olan jobs komutu ile listeleyebiliriz:

Sol sütundaki sayılar bash kabuğunun bu süreçleri başlatırken onlara atadığı süreç numaralarıdır. İki numaralı süreç (başka bir deyişle job) yanında bir + (artı) sembolü vardır ve bu da sürecin şu anda çalışmaktan olan süreç olduğunu gösterir yani fg komutunu verirseniz önplanda çalışmaya başlayacak olan süreç budur. Tabi eğer isterseniz numarasının vererek başka bir süreci de önplana çekebilirsiniz. fg 1 komutu kırmızı xeyes sürecini önplana çekecektir. Bir sonraki sütun ise süreç ID’sini yani pid numarasını gösterir karşımızdaki listede (bunun gelmesini de jobs komutuna verdiğimiz -l seçeneğine borçluyuz). Son olarak her iki süreç (job) da ”Running” yani çalışıyor durumda ve bunları başlatan komut satırlarını da en sağda görebilirsiniz.

Sinyallere giriş

Süreçleri öldürmek, durdumak ya da devam ettirmek için, Linux işletim sistemi ”sinyal” olarak bilinen özel bir iletişim şekli kullanır. Bir sürece belli bir sinyal yollayarak o süreci sonlandırabilir, durdurabilir, ya da başka şeyler yapabilirsiniz. Aslında Control-C, Control-Z, ya da fg, bg gibi komutları kullandığınızda
yaptığınız tam da budur – bash kabuğunun belli bir sürece belli bir sinyal göndermesini sağlamaktasınızdır.
Bu sinyaller kill komutuna süreç numarası (pid) verilerek de gönderilebilir:

 

Gördüğünüz gibi kill komutu isminin çağrıştırdığı şekilde illa ki bir süreci ”öldürmek” zorunda değildir. ”-s” seçeneği kullanılarak kill komutunun bir sürece herhangi bir sinyali göndermesi sağlanabilir. Linux süreçlerine SIGINT, SIGSTOP ya da SIGCONT sinyallerinden biri gönderildiğinde sırası ile bunları sonlandırır, durdurur ya da devam ettirir. Bir sürece yollayabileceğiniz başka sinyal türleri de vardır; bunlardan bazıları uygulamanın özelliklerine göre yorumlanacaktır. Belli bir sürecin hangi sinyale karşı nasıl tepki vereceğini öğrenmenin en güzel yolu ilgili süreci başlatan komutun man sayfasına bakıp oradaki SIGNALS bölümünü okumaktır.

SIGTERM ve SIGINT

Eğer bir süreci öldürmek (sonlandırmak) isterseniz pek çok seçeneğiniz vardır. Aksi belirtilmediği sürece kill komutu SIGTERM sinyalini gönderir ve bu Control-C ile yollanabilen SIGINT sinyalinden farklı olmakla birlikte benzer sonuç üretir:

Büyük ölüm

Süreçler hem SIGTERM hem de SIGINT sinyallerini dikkate almayıp görmezden gelebilirler; bunu ya bilerek ve isteyerek yaparlar ya da bir şekilde durmuş veya takılmışlardır. Bu gibi durumlarda bir balyoz kullanmak gerekebilir ve devreye SIGKILL sinyali girer. Bir süreç SIGKILL sinyalini görmezden gelemez:

nohup

Belli bir işi (süreci) başlattığınız terminal o işin kontrol terminali olarak adlandırılır. Bazı kabuklar öntanımlı olarak (bash değil) siz logout komutu ile terminalden çıkınca arkaplandaki işlere SIGHUP sinyalini yollayıp onların sonlanmasına yol açarlar. Eğer siz terminalden logout komutu ile çıktığınızda süreçlerinizin bu şekilde sonlandırılmasını istemiyorsanız o zaman süreci başlatırken nohup seçeneğini kullanmanızda fayda vardır:

ps komutu ile süreçleri listelemek

Yukarıda kullandığımız jobs komutu içinde bulunduğumuz mevcut bash oturumunda başlatılan süreçleri listeliyordu. Sisteminizdeki tüm süreçleri görmek için kullanmanız gereken komut ise ps komutudur ve bu komuta a ve x seçeneklerini vermeniz gereklidir.

Bu komutun çıktısı olan listenin ancak küçük bir kısmını yukarı yazdık çünkü genellikle bu liste çok daha uzun olur. Bu liste size makinanın o anda ne yaptığının bir fotoğrafını verir ancak göz atılacak pek çok veri vardır içinde. Eğer ax seçeneklerini kullanmadan ps komutunu çalıştıracak olsaydınız sadece size ait ve belli bir terminalin kontrolü altındaki süreçleri görürdünüz. ps x size tüm süreçleri gösterir, belli bir terminal tarafından kontrol edilmeyenler dahil. Eğer ps a şeklinde kullanmış olsaydınız o zaman da belli terminallere bağlı ve herkese ait süreçleri görürdünüz.

Hem ormanı hem de ağaçları görebilmek

Her süreç ile ilgili farklı bilgileri de listeleyebilirsiniz. –forest (orman) seçeneği süreç hiyerarşisini görmenizi ve sisteminizdeki birçok sürecin arasındaki ilişkiyi algılamanızı sağlar. Bir süreç başka bir süreç başlattığında bu yeni sürece ”çocuk” (child) süreç denir. –forest seçeneği kullanılarak elde edilen bir ps çıktısında ebeveyn süreçler yani çocuk süreçleri başlatan süreçler solda görünürken çocuk süreçler de sağa doğru dallanacak şekilde listelenirler.

”u” ve ”l” ps seçenekleri

”u” ve ”l” seçenekleri a ve x seçeneklerine eklenebilen seçeneklerdir ve süreçler hakkında daha çok bilgi almanızı sağlarlar:

”top” kullanımı

nice

Her sürecin bir öncelik derecesi vardır ve Linux buna göre sürecin çalışma hızını ayarlar. Bir sürecin önceliğini bu sürecin isminin başına nice yazıp başlatmak suretiyle ile ayarlayabilirsiniz:

Öncelik ayarına ”nice” dendiği için buna yüksek bir değer verdiğiniz takdirde diğer süreçlere nezaket sergilediğinizi, onlara CPU için öncelik tanıdığınızı hatırlamak zor olmayacaktır. Aksi belirtilmediği sürece, süreçler 0 öncelikli olarak başlarlar, yani yukarıda ogg’nin 10 ile başlatılması demek, ogg’nin CPU’ya ne kadar ihtiyacı olursa olsun önceliği diğer süreçlere tanıması ve böylece onların normal hızda çalıştırılmasına izin vermesi demektir. Süreçlerin ”nice” derecesini ps ve top komutlarının yukarıdaki çıktılarındaki NI sütununda görebilirsiniz.

renice

Nice komutu, sadece çalıştırdığınız anda, bir komutun önceliğini belirler. Eğer çalışmakta olan bir komutun önceliğini değiştirmek isterseniz renice kullanmanız gerekir.

Yazı işleme

Yönlendirme Bir komutun çıktısını bir dosyaya yönlendirmek için > operatörünü kullanırız, şöyle ki:

Çıktıyı yönlendirmeye ek olarak, oldukça güçlü bir kabuk özelliği olan pipe (boru)ları da kullanabiliriz. Bağlantıları kullanarak bir komutun çıktısını diğerine girdi olarak vermemiz mümkün. Şu örneğe bir bakın

— karakteri soldaki komutun çıktısının sağdaki komuta girdi olarak verilmesini sağlamaktadır. Yukardaki örnekte echo komutu ”merhaba dunyali” cumlesini sonunda bir satır sonu ile birlikte basar. Normalde bu çıktının terminalde gözükmesi lazım fakat yaptığımız bağlantı onu wc komutuna yönlendirdi ve böylece satır, kelime ve karakter (boşluk ve satır sonu dahil) sayılarını öğrendik. Bir boru örneği İşte bir başka örnek:

Bu durumda, ls -s normalde mevcut dizinin listesini her dosyanın boyu dosya isminden önce gelecek şekilde terminal ekranına basacakken biz bu çıktıyı borudan geçirip sort -n’ye yönlendirdiğimiz için karşımıza çıktının sayısal olarak sıralanmış şekli gelmektedir. Ev (home) dizininizdeki büyük dosyaları
bir bakışta tespit etmek için gerçekten güzel bir yöntem!
Aşağıdaki önekler biraz daha karışıktır ancak boru mekanizması ile ne kadar güçlü ve becerikli işlemler gerçekleştirilebildiğini göstermeleri bakımından faydalıdır. Şimdiye dek görmediğiniz bazı komutlarla karşılaşabilirsiniz, bunun sizi yavaşlatmasına lütfen izin vermeyin. Bunun yerine boru mekanizmasını yani bir çıktının bir sonraki programa girdi olarak nasıl geçildiğini anlamaya odaklanın. Böylece bunlardan günlük Linux kullanımınızda bolca faydalanabilirsiniz. Sıkıştırılmışları açan boru hattı Nomalde sıkıştırılmış bir dosyayı açmak ve arşivi çözmek için şunu yaparsınız:

Bu yöntemin dezavantajı diskinizde sıkıştırılmamış bir ara dosya barındımasıdır. tar yazılımı doğrudan standart girdiden okuyabildiği için (yani buna parametre olarak illa ki diskteki bir dosyayı geçmeniz gerekmediği için) yukarıdaki sonucun aynısına şöyle bir boru hattı kullanarak, daha pratik ve ekonomik bir şekilde erişebiliriz:

Sıkıştırılmış arşiv (tarball) dosyamız bir anda açılıverdi ve arada ortaya çıkan geçici bir dosyaya da ihtiyaç duymadık.

Cat

Bir başka örneğe bakalım:

cat komut ile myfile.txt dosyasının içeriğini elde edip bunu sort komutuna girdi olarak veriyoruz. sort komutu bu girdiyi alınca tüm satırları alfabetik olarak sıralıyor ve ürettiği çıktıyı boru üzerinden uniq komutuna aktarıyor ve bu program da tekrar eden satırları iptal ediyor (yani birbirinin aynısı olan satırlardan sadece bir tane görünüyor) ve bu sonucu wc -l komutuna veriyor. wc komutunu daha önce görmüştük, -l seçeneği ile birlikte kullanıldığında bu komut sadece ve sadece satır sayısını verir. Birkaç test dosyası oluşturup bu boru hattının etkilerini inceleyebilirsiniz.

Metin işleme kasırgası başlıyor!

Şimdi standart Linux metin işleme komutlarının üzerinden fırtına gibi geçeceğiz. Bu bölümde bir hayli yoğun bir içerik aktardığımız için her komuta dair detaylı bir sürü örnek veremeyeceğiz bu yüzden de sizden burayı okuduktan sonra ilgili komutların man sayfalarına bakmanızı istiyoruz. Bunları inceleyin ve değişik seçeneklerle oynayın, öğrenmenin en güzel yolu budur. Genel kural olarak bu komutlar kendisine verilen metin dosyalarının içeriğini uygun şekilde işleyip ekrana basarlar, dosyanın kendisine kalıcı olarak müdahale etmezler. Bu fırtına turundan sonra girdi ve çıktı yönlendirmeye biraz daha detaylı bakacağız.

echo

echo kendisine verilen argümanları terminale basar. -e seçeğini kullanırsanız ”escape dizisi” olarak tabir ettiğimiz özel karakter kombinasyonlarının da düzgün olarak yorumlanmasını sağlarsınız, misal: echo -e ”foo nfoo” komutu ekrana önce foo basar, bir satır aşağı iner başka bir deyişle yenisatır karakteri basar ve sonra yine bir kez foo basar. -n seçeneğini kullanırsanız çıktıya en sonra otomatik olarak eklenen yenisatır karakterinin basılmasını engelleyebilirsiniz.

cat, sort ve uniq

cat: cat komutu bir dosyanın içeriğini terminal ekranına basar. Bir boru hattına ilk girdiyi vermek için faydalı bir komuttur, misal cat foo.txt — vesaire — vesaire.
sort: sort komutu komut satırında kendisine belirtilen dosyanın içeriğini alfabetik olarak sıralayıp basar. Elbette sort komutu da boru üzerinden kendisine aktarılan girdiyi kabul edecek şekilde tasarlanmıştır. man sort ile bu komutun ne kadar farklı sıralama işleri için pratik şekilde kullanılabileceğini görebilirsiniz. uniq: uniq sıralanmış bir dosyayı ya da boru hattı üzerinden kendisine yollanan veriyi alır ve bunun içindeki birbirinin aynısı olan satırları ayıklar.

wc, head, ve tail

wc: wc komut satırında kendisine belirtilen dosyayı (ya da boru hattından gelen veriyi) okur ve bu dosyanın satır, sözcük ve byte sayısını ekrana basar. man wc ile detaylı bilgi edinebilirsiniz.
head: head komutu bir dosyanın ya da boru hattından gelen verinin ilk on satırını basar. -n seçeneği ile kaç satır basılacağını belirleyebilirsiniz.
tail: Bu komut bir dosyanın ya da boru hattından akan verinin son on satırını basar. -n seçeneği ile kaç satır basılacağını belirleyebilirsiniz.

tac, expand ve unexpand

tac: tac da tıpkı cat komutu gibidir, şu farkla ki okuduğunu tersten basar. Yani son okunan satır ilk olarak basılır, dosyanın ilk satırı ise en son basılır.
expand: expand komutu girdideki tab karakterlerini boşluk karakterine dönüştürür. -t seçeneği ile tab duraklarını belirleyebilirsiniz.
unexpand: unexpand girdideki boşlukları tab karakterine dönüştürür. -t seçeneği ile tab duraklarını belirleyebilirsiniz.

cut, nl ve pr

cut: cut komutu belli bir dosyadaki ya da girdideki karakterle ayrılmış alanları çekip çıkarır.
nl: nl girdideki her satırın başına sıra ile artan bir sayı ekler. Özellikle program kaynak kodu türünden dosyalara göz atarken ya da bunların çıktısını alırken faydalıdır.
pr: pr komutu bir dosyayı sayfalara böler, yazıcı çıktılarında faydalıdır.

tr, sed ve awk

tr: tr bir tür karakter dönüştürme aracıdır, girdideki belli karakterleri çıktıdaki başka karakterlere tasvir etmek için kullanılır.
sed: sed çok güçlü, veri akışını işlemeye yönelik (stream-oriented) metin editörüdür.
awk: awk kolay kullanımlı, satır tabanlı bir metin işleme dilidir.

od, split, ve fmt

od: od komutu girdiyi alıp sekizlik ya da onaltılık biçimde basar.
split: split komutu büyük bir dosyayı alıp bunu küçük dosyalara ayırır.
fmt: fmt paragraf kenarları toplanacak şekilde paragrafı yeniden biçimlendirir. Bu yetenek birçok text editör içerisinde yer alsa bile bilinmesi gereken komutlardan bir tanesidir.

Paste, join, ve tee

paste: paste iki ya da daha fazla dosyayı girdi olarak alır, giriş dosyalarından gelen ardışıl satırları birbiri ardına ekler ve sonuç satırlarını çıktı yapar. Text tabloları ve kolonları yaratmak için oldukça kullanışlıdır.
join: join de paste komutuna benzese de tek bir satırda birleşecek şeyleri eşleştirmek için, her girdi satırında bir alan kullanır.
tee: tee kendi girdisini hem dosyaya hem de ekrana basar. Bir şeyin log’unu tutmak ama aynı zamanda çıktıyı ekranda da görmek istediğinizde bu komut gayet kullanışlı olabilir

Yönlendirme (redirection)

Bash komut satırlarında kullanılan >’a benzer olarak, bir dosyayı komuta yönlendirmek için < de kullanabilirsiniz. Bir çok komuta girdi olması için komut satırlarında dosya adı belirleyebilirsiniz. Fakat bazı komutlar sadece standart girdiden alınan girişlerle çalışmaktadır.
Bash ve diğer kabuklar ”herefile” kavramına destek verirler. Bu yöntem sizin belli bir gözcü değer ile sonlanmış ve komut çağrımından sonra gelen satırlarda bir komuta girdi belirtmenize olanak sağlar.
Örneğin:

Bu örnekte, END ile sonlanan ve girdinin bittiğini ifade eden kelimeyi ve bundan önce de elma, armut ve muz kelimelerini yazdık ve sort programı bu girdinin sıralanmış şekli ile geri döndü.

>> Kullanımı

>  >  kullanımının << ile benzerlik göstereceğinin düşünecek olasanız da aslında bu ikisi birbirinden farklıdır. >> basitçe çıktıyı > nin yaptığı gibi dosyaya yazmak yerine dosyanın sonuna yazar. Örneğin:

O da ne! ”merhaba” kelimesini kaybettik. Aslında az önce kastettiğimiz:

idi. Bu daha iyi değil mi?

 

0 Comments

Leave a Comment

Blog'a e-posta ile abone ol

Bu bloga abone olmak ve e-posta ile bildirimler almak için e-posta adresinizi girin.

Diğer 261 aboneye katılın