🥋 Terminal Dojo - Dosya Bulma ve Arşivleme Sanatı
"Gerçek ninja, kayıp dosyayı bulur ve hazinesini saklar." - Terminal Sensei
🔍 Kayıp Dosyaların Peşinde: Ninja'nın Görevi
Artık dosya içeriğini okuyabiliyorsun, ama Sensei sana yeni bir görev verir: "Bu sistemde kayıp bir config dosyası var, bul ve güvenliğini sağla!"
Bu görev için üç yeni güç kazanacaksın:
- 🔎 find - Dosya sisteminde arama yapma ustası
- 🔐 chmod - Dosya güvenliği ve izin yönetimi
- 📦 tar/zip - Dosyaları arşivleme ve sıkıştırma
💡 Modern Gerçeklik
Geliştiriciler sürekli kayıp dosya arar, config dosyalarını bulur ve projelerini arşivler. Bu komutlar olmadan gerçek bir ninja olamazsın!
1️⃣ find Komutu - "Dosya Arama Büyüsü"
find
= Dosya sisteminde gelişmiş arama
Bu komut ile dosya sisteminin her yerinde arama yapabilir, dosya türüne, boyutuna, değişim zamanına göre filtreleyebilirsin.
💻 Temel Kullanım:
# Dosya adına göre arama
$ find . -name "config.php"
$ find /home -name "*.txt"
# Dosya türüne göre arama
$ find . -type f # Sadece dosyalar
$ find . -type d # Sadece klasörler
$ find . -type l # Sadece linkler
# Boyuta göre arama
$ find . -size +10M # 10MB'dan büyük
$ find . -size -1M # 1MB'dan küçük
🔥 Gelişmiş Arama:
# Değişim zamanına göre
$ find . -mtime -1 # Son 1 günde değişen
$ find . -mtime +7 # 7 günden eski
# Sahiplik ve izinlere göre
$ find . -user kullanici # Kullanıcının dosyaları
$ find . -perm 644 # 644 izinli dosyalar
# Boş dosyalar
$ find . -empty # Boş dosyalar
$ find . -size 0 # 0 byte dosyalar
⚡ Pro İpucu
find komutu çok güçlüdür ama yavaş olabilir. Büyük sistemlerde -maxdepth
ile arama derinliğini sınırla!
2️⃣ chmod Komutu - "İzin Yönetimi Ustası"
chmod
= Change Mode (İzin Değiştir)
Dosya ve klasörlerin okuma, yazma ve çalıştırma izinlerini ayarlar. Güvenlik için kritik!
💻 Temel Kullanım:
# Sayısal izinler
$ chmod 755 script.sh # rwxr-xr-x
$ chmod 644 dosya.txt # rw-r--r--
$ chmod 600 .env # rw-------
# Sembolik izinler
$ chmod +x script.sh # Çalıştırma izni ekle
$ chmod -w dosya.txt # Yazma iznini kaldır
$ chmod u=rw,g=r,o=r dosya.txt
🔐 Yaygın İzin Kombinasyonları:
# 755 - Klasörler için (rwxr-xr-x)
$ chmod 755 klasor/
# 644 - Dosyalar için (rw-r--r--)
$ chmod 644 dosya.txt
# 600 - Gizli dosyalar için (rw-------)
$ chmod 600 .env
# 750 - Script dosyaları için (rwxr-x---)
$ chmod 750 script.sh
3️⃣ tar & zip Komutları - "Arşivleme Sanatı"
tar = tape archive (Linux/Unix arşiv formatı)
zip = sıkıştırılmış arşiv (Windows uyumlu)
Birden fazla dosyayı tek bir arşivde toplar ve sıkıştırır. Yedekleme ve taşıma için mükemmel!
💻 tar Komutu:
# Arşiv oluştur
$ tar -cvf arsim.tar dosya1.txt dosya2.txt
# Arşivi aç
$ tar -xvf arsim.tar
# Sıkıştırılmış arşiv (.tar.gz)
$ tar -czvf arsim.tar.gz dosya1.txt dosya2.txt
# Sıkıştırılmış arşivi aç
$ tar -xzvf arsim.tar.gz
💻 zip Komutu:
# Zip arşivi oluştur
$ zip arsim.zip dosya1.txt dosya2.txt
# Zip arşivini aç
$ unzip arsim.zip
# Klasörü zip'le
$ zip -r klasor.zip klasor/
# Zip içeriğini listele
$ unzip -l arsim.zip
🚩 tar Komut Bayrakları:
-c
= Create (oluştur)-x
= Extract (aç)-v
= Verbose (detaylı göster)-f
= File (dosya adı belirt)-z
= Gzip (sıkıştır)
⚡ Pro İpucu
tar Linux/Unix'te daha yaygın, zip Windows uyumluluğu için daha iyi. Her ikisini de bil!
⚡ Güç Kombinasyonları
🔥 find + chmod Kombinasyonu
# Tüm .sh dosyalarına çalıştırma izni ver
$ find . -name "*.sh" -exec chmod +x {} \;
# Son 1 günde değişen dosyaları bul ve izinlerini ayarla
$ find . -mtime -1 -type f -exec chmod 644 {} \;
# Büyük dosyaları bul ve sadece okuma izni ver
$ find . -size +100M -exec chmod 444 {} \;
🔍 Güvenlik Taraması
# Çok açık izinli dosyaları bul
$ find . -perm 777
# Sahipsiz dosyaları bul
$ find . -nouser
# Gizli dosyaları bul ve güvenliğini sağla
$ find . -name ".*" -exec chmod 600 {} \;
💡 İş Akışı İpucu
Önce find ile dosyaları bul, sonra chmod ile güvenliğini sağla. Her zaman test et!
🏋️♂️ Pratik Zamanı - Dosya Avı ve Arşivleme
Egzersiz 1: Kayıp Dosyayı Bul
# 1. config.php dosyasını bul
$ find . -name "config.php"
# 2. Son 1 günde değişen dosyaları bul
$ find . -mtime -1 -type f
# 3. 10MB'dan büyük dosyaları bul
$ find . -size +10M
Egzersiz 2: İzinleri Güvenli Hale Getir
# 1. Script dosyasına çalıştırma izni ver
$ chmod +x script.sh
# 2. Gizli dosyayı sadece sahibi okuyabilsin
$ chmod 600 .env
# 3. Klasör izinlerini ayarla
$ chmod 755 klasor/
Egzersiz 3: Dosyaları Arşivle
# 1. Dosyaları tar ile arşivle
$ tar -cvf yedek.tar dosya1.txt dosya2.txt
# 2. Arşivi aç
$ tar -xvf yedek.tar
# 3. Zip arşivi oluştur
$ zip yedek.zip dosya1.txt dosya2.txt
# 4. Zip arşivini aç
$ unzip yedek.zip
🎯 Dosya Bulma ve Arşivleme Ustası Kontrolü
Bu dersi tamamladıktan sonra şunları yapabilmelisin:
- ✅ find komutu ile gelişmiş dosya araması yapabilirsin
- ✅ Dosya izinlerini (rwx) anlayabilir ve değiştirebilirsin
- ✅ chmod ile güvenlik ayarları yapabilirsin
- ✅ tar ve zip ile dosyaları arşivleyebilirsin
- ✅ find + chmod kombinasyonları ile otomatik güvenlik sağlayabilirsin
🧙♂️ Sensei'nin Son Sözleri
"Artık dosya sisteminin her yerinde arama yapabiliyor, güvenliği sağlayabiliyor ve arşivleyebiliyorsun! Gerçek ninja, kayıp dosyayı bulur, korur ve saklar."
Terminal Ninja'sı: Dosya bulma, güvenlik ve arşivleme senin elinde! 🥋
Yorumlar
Henüz yorum yapılmamış. İlk yorumu siz yapın!