Android

Linux'ta cp komutu (dosyaları kopyala)

Linux vs Windows vs MacOS для работы. Какой ЛИНУКС выбрать в 2020 для рабочего компьютера?

Linux vs Windows vs MacOS для работы. Какой ЛИНУКС выбрать в 2020 для рабочего компьютера?

İçindekiler:

Anonim

Linux ve Unix sistemleri üzerinde çalışırken, dosya ve dizinleri kopyalamak günlük olarak gerçekleştireceğiniz en yaygın görevlerden biridir.

cp , Unix ve Linux sistemlerine dosya ve dizin kopyalamak için kullanılan bir komut satırı yardımcı programıdır., cp komutunun nasıl kullanılacağını açıklayacağız.

cp komutu nasıl kullanılır

cp komutu için genel sözdizimi aşağıdaki gibidir:

cp SOURCE… DESTINATION

SOURCE , bağımsız değişken olarak bir veya daha fazla dosya veya dizin içerebilir ve DESTINATION bağımsız değişkeni tek bir dosya veya dizin olabilir.

  • SOURCE ve DESTINATION bağımsız değişkenlerinin her ikisi de dosya olduğunda, cp komutu ilk dosyayı ikinci dosyaya kopyalar. Dosya yoksa, komut onu oluşturur. SOURCE bağımsız değişken olarak birden fazla dosya veya dizin içeriyorsa, DESTINATION bağımsız değişkeni bir dizin olmalıdır. Bu durumda, SOURCE dosyaları ve dizinleri DESTINATION dizinine taşınır. SOURCE ve DESTINATION bağımsız değişkenlerinin her ikisi de dizin olduğunda, cp komutu ilk dizini ikinci dizine kopyalar.

Dosya ve dizinleri kopyalamak için kaynak dosya üzerinde en az okuma iznine ve hedef dizinde yazma iznine sahip olmalısınız. Aksi takdirde, izin verilmedi hatası gösterilir.

CP Komutu ile Dosya Kopyalama

cp kullanmanın en temel senaryosu, geçerli çalışma dizinindeki bir dosyayı kopyalamaktır. Örneğin, file.txt adlı bir dosyayı file_backup.txt dosyasına kopyalamak için aşağıdaki komutu çalıştırın:

cp file file_backup

veya

cp file{, _backup}

Bir dosyayı başka bir dizine kopyalamak için, hedef dizinin mutlak veya göreceli yolunu belirtin.

Yalnızca dizin adı hedef olarak belirtildiğinde, kopyalanan dosya orijinal dosyayla aynı ada sahiptir.

Aşağıdaki örnekte file.txt /backup dizinine kopyalıyoruz:

cp file.txt /backup

cp file.txt /backup/new_file.txt

Varsayılan olarak, hedef dosya varsa, üzerine yazılır. -n seçeneği cp varolan bir dosyanın üzerine cp söyler.

cp onay cp zorlamak için -i seçeneğini kullanın.

cp -i file.txt file_backup.txt

cp -u file.txt file_backup.txt

Bir dosyayı kopyalarken, yeni dosya komutu çalıştıran kullanıcıya aittir. Dosya modunu, sahipliğini ve zaman damgalarını korumak için -p seçeneğini kullanın:

cp -p file.txt file_backup.txt

Yararlı olabilecek diğer bir seçenek, -v ayrıntılı çıktıyı yazdırmasını söyleyen cp :

cp -v file.txt file_backup.txt

'file.txt' -> 'file_backup.txt'

Cp Komutu ile Dizin Kopyalama

Tüm dosyaları ve alt dizinleri de dahil olmak üzere bir dizini kopyalamak için -R veya -r seçeneğini kullanın.

Aşağıdaki örnekte Pictures dizinini Pictures klasörüne kopyalıyoruz:

cp -R Pictures Pictures_backup

Yukarıdaki komut, hedef dizini oluşturur ve tüm dosyaları ve alt dizinleri özyinelemeli olarak kaynaktan hedef dizine kopyalar.

Hedef dizin zaten varsa, kaynak dizinin kendisi ve tüm içeriği hedef dizinin içine kopyalanır. Hedef dizini değil, yalnızca dosyaları ve alt dizinleri kopyalamak için -T seçeneğini kullanın:

cp -RT Pictures Pictures_backup

Yalnızca dizinin içeriğini değil dizinin kendisini kopyalamanın başka bir yolu da joker karakteri ( * ) kullanmaktır. Aşağıdaki komutun dezavantajı, gizli dosyaları ve dizinleri (nokta ile başlayanlar) kopyalamamasıdır:

cp -RT Pictures/* Pictures_backup/

Dosyaları kopyalarken önceki bölümde kullandığımız tüm seçenekler dizinleri kopyalarken de kullanılabilir. Temel fark dizinleri kopyalarken. her zaman -R seçeneğini kullanmanız gerekir.

Birden Fazla Dosya ve Dizin Kopyalama

Birden çok dosyayı ve dizini aynı anda kopyalamak için, adlarını belirtin ve hedef dizini son argüman olarak kullanın:

cp file.txt dir file1.txt dir1

Birden fazla dosya kopyalarken, hedef bir dizin olmalıdır.

Sonuç

Dosya ve dizinleri cp komutuyla kopyalamak basit bir iştir. Mevcut tüm cp seçenekleri hakkında bilgi için terminalinize man cp yazın.

Ağ üzerinden dosya kopyalamak için rsync ve scp yardımcı programlarını kullanın.

cp terminali