1. cp Komutu Nedir?
cp (copy) komutu, Linux ve Unix sistemlerinde dosya ve dizinleri kopyalamak için kullanılan temel araçlardan biridir.
Başlıca kullanım amaçları:
- Tek bir dosyayı başka bir konuma kopyalamak
- Birden fazla dosyayı aynı klasöre kopyalamak
- Dizinleri ve içeriğini özyinelemeli olarak kopyalamak
- Kopyalama sırasında dosya izinlerini ve zaman damgalarını korumak
Temel Kullanım
cp kaynak.txt hedef.txt
Açıklama: kaynak.txt dosyasını hedef.txt adıyla kopyalar.
3. Sık Kullanılan Argümanlar
Argüman | Açıklama |
---|---|
-r veya -R | Dizinleri ve içeriğini özyinelemeli kopyalar |
-i | Üzerine yazmadan önce onay ister |
-f | Hedef dosya varsa zorla üzerine yazar |
-u | Sadece kaynak dosya hedeftekinden yeni ise kopyalar |
-p | Zaman damgalarını, izinleri ve sahiplik bilgilerini korur |
-v | Kopyalanan dosyaları ekranda gösterir |
–backup | Hedef dosya varsa yedeğini oluşturur (~ ekler) |
4. Örnek Kullanımlar
4.1. Tek Dosya Kopyalama
cp belge.txt /home/erdal/
Açıklama: belge.txt dosyasını /home/erdal/ dizinine kopyalar.
4.2. Birden Fazla Dosya Kopyalama
cp dosya1.txt dosya2.txt /home/erdal/
Açıklama: İki dosyayı belirtilen klasöre kopyalar.
4.3. Dizinleri Özyinelemeli Kopyalama
cp -r proje/ /home/erdal/
Açıklama: proje klasörünü ve içeriğini hedef dizine kopyalar.
4.4. Üzerine Yazmadan Önce Onay Alma
cp -i belge.txt /home/erdal/
çıklama: Hedefte aynı dosya varsa değiştirmeden önce onay ister.
4.5. Kopyalama İşlemini Görüntüleme
cp -v belge.txt /home/erdal/
Açıklama: Kopyalanan dosyayı ekranda gösterir.
4.6. İzin ve Zaman Damgalarını Koruyarak Kopyalama
cp -p belge.txt /home/erdal/
Açıklama: Dosya izinlerini, sahipliğini ve zaman damgalarını korur.
4.7. Sadece Yeni Dosyaları Kopyalama
cp -u belge.txt /home/erdal/
Açıklama: Hedefteki dosyadan daha yeni ise kopyalar.
4.8. Yedek Oluşturarak Kopyalama
cp --backup belge.txt /home/erdal/
Açıklama: Aynı dosya varsa yedeğini .belge.txt~ şeklinde tutar.
5. İpuçları
- -r parametresi olmadan dizin kopyalanmaz.
- Kritik verilerde -i ile onay almak veri kaybını önler.
- Büyük klasörleri kopyalarken ilerleme görmek için rsync -avh –progress alternatifi tercih edilebilir.
- cp -rp ile hem içeriği hem de izin bilgilerini koruyarak tam bir yedek kopya oluşturabilirsiniz.