Bir klasörün içeriğini terminal kullanarak farklı bir dizindeki başka bir klasöre kopyalamaya çalışıyorum.
Biri bana bunu başarmak için gereken komut satırı sözdiziminin bir örneğini sunabilir mi?
/source
klasörünün içeriğini komut ile başka bir mevcut klasöre /dest
kopyalayabilirsiniz.
cp -a /source/. /dest/
-a
seçeneği, tüm dosya özniteliklerini koruyan ve aynı zamanda sembolik bağları koruyan geliştirilmiş özyinelemeli bir seçenektir.
Kaynak yolun sonundaki .
, gizli dosyalar dahil tüm dosya ve klasörleri kopyalamaya izin veren belirli bir cp
sözdizimidir.
Bir alternatif rsync
rsync -r source/ destination
Rsync'in avantajları:
İlk senkronizasyondan sonra, yalnızca değişen dosyaları kopyalar.
Bir ağ üzerinden, $ HOME'daki dosyalar için, özellikle yapılandırma dosyaları için uygun kullanabilirsiniz.
Diyelim ki ~
içinde folder1 adında bir klasör olduğunu varsayalım, içinde klasör1 içinde 1 dosya var dosya1 ve sub1 ve sub2 olarak adlandırılan 2 klasör ve her biri içinde başka dosya ve klasörlerle birlikte.
~/folder1
- ~/new_folder1
tüm içeriğini kopyalamak için kullanmalısınız
cp -r ~/folder1/. ~/new_folder1
new_folder1
, daha sonra folder1
sayfasındaki tüm dosya ve klasörleri içerecektir.
cp
bir terminal kullanarak kopyalama komutudur, -r
bunu yinelemeli yapar (bu nedenle, geçerli dizin + mevcut içindeki diğer dizinler) ~/folder1
, Origin klasörüdür, ~/new_folder1
Menşe içindeki dosyalar/klasörler için hedef klasör.
Klasör kopyalama hakkında daha fazla bilgi için bu http://www.cyberciti.biz/faq/copy-folder-linux-command-line/ işaretini kontrol edin. Bu yardımcı olur umarım.
cp Command
cp
, dosya ve dizinleri kopyalamak için kullanılan bir Linux komutudur. Sözdizimi aşağıdaki gibidir:
cp source destination
cp dir1 dir2
cp -option source destination
cp -option1 -option2 source destination
Bu örnekte, /home/vivek/letters
klasörünü ve tüm dosyalarını /usb/backup
dizinine kopyalayın:
cp -avr /home/vivek/letters /usb/backup
Nerede,
-a
: Dizin dosya modu, sahiplik, zaman damgaları, mümkünse ek özellikler gibi belirtilen özellikleri koruyun: bağlam, bağlantılar, xattr, tümü.
-v
: Ne yapıldığını açıkla.
-r
: Dizinleri art arda kopyalayın. Örnek
/ Tmp/conf adlı bir klasörü/tmp/backup dizinine kopyalayın:
$ cp -avr /tmp/conf/ /tmp/backup
İki klasör varsa: (yazma izniyle)
drwxr-xr-x 4 vimal vimal 4096 Sep 9 12:17 .
drwxr-xr-x 3 root root 4096 Aug 18 14:35 ..
drwxrwxrwx 6 vimal vimal 4096 Sep 9 12:15 DATA
drwxrwxrwx 7 vimal vimal 4096 Sep 9 12:15 PORTAL
PORTAL adlı bir klasörün içindeyseniz, başka bir klasörün tüm içeriğini kopyalamak istediğinizde aynı seviyede VERİ diyorsunuz.
[email protected]:/var/www/html/PORTAL$ cp -a ../DATA/. .
2 nokta fark etmelisin. Son nokta, kopyayı mevcut klasörde buraya yazdığını söylüyor.
ve
birini takip/DATA /. DATA klasörü içindeki tüm İÇERİKLER'in DATA klasörünün değil kopyalanacağını söylüyor.
Bu izini kaldırırsanız "."/DATA'dan /
daha sonra tüm DATA klasörü PORTAL içine kopyalanacaktır (başa çıkacağınız yerden).
dir_1 dizini ve içeriğini (_files _) dizine kopyalayın dir_2 :
cp -r ./dir_1 ./dir_2
# or
cp -r ./dir_1/ ./dir_2/
# Results in: ./dir_2/dir_1/_files_
içeriğini (_files_) yalnızca dir_1 dizinine dir_2 dizinine kopyalayın :
cp -r ./dir_1/. ./dir_2
# or
cp -r ./dir_1/. ./dir_2/
# Results in: ./dir_2/_files_*
_files_
, dizinde bulunan gerçek dosyalar için bir yer tutucudur.