Günün Linux Komutu: mv (Taşı ve Yeniden Adlandır)

mv komutu, Linux terminalindeki en temel ama en çok kafa karıştıran (özellikle "yeniden adlandırma" işlevi nedeniyle) araçlardan biridir.

İşte hem yeni başlayanlar hem de bilgilerini tazelemek isteyenler için Günün Linux Komutu: mv 


Linux dünyasında dosyalarınızın yerini değiştirmek veya onlara yeni bir kimlik (isim) kazandırmak istediğinizde başvuracağınız komut mv'dir. İngilizce "move" (taşı) kelimesinin kısaltmasıdır.

Ancak mv sadece bir nakliye aracı değildir; aynı zamanda dosya isimlendiricisidir.

Temel Sözdizimi (Syntax)

Komutun yapısı oldukça basittir:

Bash:
mv [seçenekler] [kaynak] [hedef]
  • Kaynak: Taşımak veya adını değiştirmek istediğiniz dosya/klasör.

  • Hedef: Dosyanın gideceği yeni yer veya yeni ismi.


1. İşlev: Dosya Taşıma (The Mover)

Bir dosyayı A noktasından B noktasına götürmek için kullanılır. Kaynak dosya eski konumundan silinir ve yeni konumuna geçer.

Örnek: rapor.pdf dosyasını Belgeler klasörüne taşıyalım.

Bash
mv rapor.pdf Belgeler/

İpucu: Birden fazla dosyayı aynı anda taşıyabilirsiniz. Sondaki argüman her zaman hedef klasör olmalıdır.

mv resim1.jpg resim2.jpg /home/kullanici/Resimler/


2. İşlev: Yeniden Adlandırma (The Renamer)

Linux'ta "yeniden adlandırma" (rename) diye özel bir komut yoktur (bazı dağıtımlarda rename olsa da standart değildir). mv komutu bu işi yapar. Mantığı şudur: "Dosyayı bulunduğu yere, ama farklı bir isimle taşı."

Örnek: eski_dosya.txt ismini yeni_dosya.txt olarak değiştirelim.

Bash:
mv eski_dosya.txt yeni_dosya.txt

⚠️ Kritik Uyarı: Üzerine Yazma Riski

mv komutu varsayılan olarak sessizdir ve acımasızdır. Eğer taşıdığınız yerde aynı isimde bir dosya varsa, mv size sormadan o dosyanın üzerine yazar ve eski dosya kalıcı olarak kaybolur.

Bunu önlemek için aşağıdaki parametreleri kullanmalısınız.


Hayat Kurtaran Parametreler (Flags)

Aşağıdaki bayraklar (flags), kazaları önlemek ve işlemi kontrol etmek için hayati önem taşır:

ParametreAçıklamaNeden Kullanmalısın?
-iInteractive (Etkileşimli)Hedefte aynı isimde dosya varsa, üzerine yazmadan önce sana sorar.
-vVerbose (Detaylı)Arka planda ne işlem yapıldığını ekrana yazar.
-nNo-clobber (Üzerine yazma)Hedefte aynı dosya varsa işlemi iptal eder, üzerine asla yazmaz.
-uUpdate (Güncelle)Sadece kaynak dosya, hedef dosyadan daha yeniyse taşıma yapar.

Örnek Senaryolar

1. Güvenli Taşıma (Mutlaka Alışkanlık Haline Getirin):

Bir dosyanın üzerine yanlışlıkla yazmamak için -i parametresini kullanın.

Bash:
mv -i veri.txt /yedekler/
# Eğer /yedekler içinde veri.txt varsa sistem sorar:
# mv: '/yedekler/veri.txt' üzerine yazılsın mı? (e/h)

2. Ne Olduğunu Görmek İstiyorum:

Yüzlerce dosyayı taşırken terminalin donduğunu sanmamak için -v kullanın.

Bash:
mv -v *.jpg /Arsiv/
# Çıktı:
# 'foto1.jpg' -> '/Arsiv/foto1.jpg'
# 'foto2.jpg' -> '/Arsiv/foto2.jpg'

3. Klasör Taşıma:

Klasörleri taşımak için ekstra bir parametreye (-r gibi) gerek yoktur (cp komutunun aksine). mv klasörü olduğu gibi taşır.

Bash
mv Projeler/ /home/kullanici/Yedek/

Özet: mv vs cp

  • cp (Copy): Dosyayı çoğaltır. Orijinal dosya yerinde kalır. (Ctrl+C / Ctrl+V)

  • mv (Move): Dosyayı taşır. Orijinal dosya silinir. (Ctrl+X / Ctrl+V)


Linux’ta dosya ve dizin yönetiminin temel taşlarından biri mv (move) komutudur.

mv, dosya/dizin taşımak ve yeniden adlandırmak için kullanılır.

📌 Önemli:
Linux’ta yeniden adlandırma işlemi ayrı bir komut değildir, mv ile yapılır.


🔹 Temel Sözdizimi (Syntax)

mv [SEÇENEKLER] KAYNAK HEDEF

veya birden fazla dosya için:

mv [SEÇENEKLER] KAYNAK1 KAYNAK2 ... HEDEF_DİZİN

🔹 1. Dosya Taşıma

📄 Aynı dizinde dosya taşımak

mv belge.txt Belgeler/

➡️ belge.txt dosyası Belgeler dizinine taşınır.


📄 Farklı dizinler arasında taşıma

mv /home/ali/test.txt /home/ali/Masaüstü/

🔹 2. Dosya Yeniden Adlandırma

mv eski_ad.txt yeni_ad.txt

➡️ Dosyanın ismi değiştirilir, konumu aynı kalır.

📌 Bu işlem taşıma değil, isim değişikliğidir ama komut aynıdır.


🔹 3. Dizin Taşıma

mv Proje Arsiv/

➡️ Proje dizini, Arsiv dizini içine taşınır.


🔹 4. Birden Fazla Dosyayı Taşıma

mv a.txt b.txt c.txt Belgeler/

➡️ Üç dosya birden Belgeler dizinine taşınır.


🔹 5. Üzerine Yazmayı Kontrol Etme

⚠️ Varsayılan Davranış

Eğer hedefte aynı isimli dosya varsa, sessizce üzerine yazar!

mv dosya.txt Belgeler/

🛑 Onay İste (-i)

mv -i dosya.txt Belgeler/

📌 Sistem sorar:

mv: overwrite 'Belgeler/dosya.txt'?

🚀 Zorla Taşı (-f)

mv -f dosya.txt Belgeler/

➡️ Uyarı sormadan üzerine yazar.


🔹 6. Detaylı Çıktı Göster (-v)

mv -v dosya.txt Belgeler/

Çıktı:

'dosya.txt' -> 'Belgeler/dosya.txt'

📌 Eğitim ortamlarında önerilir.


🔹 7. Dosya Türüne Göre Taşıma (Wildcard)

mv *.pdf PDF_Dosyalar/

➡️ Tüm PDF dosyaları taşınır.

mv *.jpg *.png Resimler/

🔹 8. mv ve cp Arasındaki Fark

KomutNe yapar?
cpKopyalar
mvTaşır (kaynak silinir)

🔹 9. Yaygın Hatalar ⚠️

❌ Hedef dizin yok

mv dosya.txt YeniKlasor/

➡️ Hata verir.

✔️ Çözüm:

mkdir YeniKlasor
mv dosya.txt YeniKlasor/

❌ Yanlış joker kullanımı

mv *.txt belge.txt

➡️ HATA: Birden çok dosya tek dosyaya taşınamaz.


🔹 Sınıf İçi LAB Senaryosu 🧪

🎯 Amaç:

Dosya taşıma ve yeniden adlandırmayı öğrenmek.

🧩 Senaryo:

mkdir lab
cd lab
touch a.txt b.txt c.txt
mkdir metinler
mv *.txt metinler/
cd metinler
mv a.txt rapor.txt

📌 Kazanımlar:

  • Joker karakter kullanımı

  • Dizin taşıma

  • Dosya yeniden adlandırma


🔹 11. mv Komutu Özeti 📝

SeçenekAçıklama
-iÜzerine yazmadan önce sor
-fZorla taşı
-vDetaylı çıktı

✅ Sonuç

mv komutu:

  • 📁 Dosya ve dizin taşır

  • ✏️ Yeniden adlandırma yapar

  • ⚡ Hızlı ve güçlüdür

Linux’ta dosya yönetimi öğrenmenin temel adımlarından biridir.






Yorumlar

Bu blogdaki popüler yayınlar

Android Telefon/Tablet Ekranını Pardus ETAP 23 Yüklü Akıllı Tahtaya Yansıtma

Pardus Etap 23’de Unutulmuş Etap Yetkili Parolasını Sıfırlama

Pardus Etap 23 Yazıcı Kurulumu