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?
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?
Yanıtlar:
Bir klasörün içeriğini komutla /source
başka bir varolan klasöre kopyalayabilirsiniz./dest
cp -a /source/. /dest/
Bu -a
seçenek, tüm dosya özniteliklerini koruyan ve aynı zamanda sembolik bağları koruyan geliştirilmiş özyinelemeli bir seçenektir.
.
Kaynak yolunun sonunda bir özgüdür cp
, gizli olanları dahil tüm dosya ve klasörleri kopyalamak için izin sözdizimi.
cp -a ~/Downloads/textext/. ~/.config/inkscape/extensions/
-p
Dosya izinlerini ve zaman damgalarını koruyacak şekilde bayrak ekleyin . cp -ap /var/www/original.com/images/. /var/www/new.com/images/
-a
Zaten --preserve=all
daha geniş, ima ediyor -p = --preserve=mode,ownership,timestamps
.
scp
bir ağ üzerinden (yoluyla ssh
) kopyalamak için kullanılır ve hedef dosya sistemindeki dosyaları değil yalnızca iletişim kanalını şifreler.
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.
rsync -r source/ destination
yeterli olmalı, hayır?
rync source/ dest
Açıkçası, insanların rsync komutunu istedikleri gibi çalışması için özelleştirmeleri gerekir.
Eğer bir klasör denilen var Diyelim Folder1'ı Gözlerinde farklı ~
iç, klasör1 denilen 1 dosyasıdır dosya1 denilen ve 2 klasör abon1 ve Sub2 içlerinde diğer dosya ve klasörler her biri.
Tüm içeriğini kopyalamak ~/folder1
için ~/new_folder1
kullanmak
cp -r ~/folder1/. ~/new_folder1
new_folder1
daha sonra gelen tüm dosya ve klasörleri içerir folder1
.
cp
bir terminal kullanarak kopyalamak için kullanılan komut, -r
yinelemeli olarak yapar (bu nedenle, geçerli dizin + akım içindeki dizinler) ~/folder1
orijin klasörüdür, ~/new_folder1
orijin içindeki dosyalar / klasörler için hedef klasördür.
~/new_folder1/folder1
içeriği kopyalamak yerine yeni bir alt dizin oluşturabilir .
cp -r ~/folder1/* ~/new_folder1
[root@ home]# mkdir food [root@ home]# cd food/ [root@ food]# mkdir .fruit [root@ food]# mkdir veggies [root@ food]# touch veggies/carrots [root@ food]# touch .fruit/apple [root@ food]# ls * carrots [root@ food]#
Klasör kopyalama hakkında daha fazla bilgi için bu http://www.cyberciti.biz/faq/copy-folder-linux-command-line/ adresini ziyaret 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 ve tüm dosyalarını /usb/backup
dizine kopyalayın :
cp -avr /home/vivek/letters /usb/backup
Nerede,
-a
: Dizin dosya modu, sahiplik, zaman damgaları, mümkünse ek özellikler: belirtilen, bağlam, bağlantılar, xattr, tümü gibi belirtilen özellikleri koruyun.
-v
: Ne yapıldığını açıklayın.
-r
: Dizinleri art arda kopyalayın. Örnek
/ Tmp / conf adlı bir klasörü / tmp / backup dizinine kopyalayın:
$ cp -avr /tmp/conf/ /tmp/backup
Kopya dizin dir_1 ve içeriğini (_files_) dizin içine dir_2 :
cp -r ./dir_1 ./dir_2
# or
cp -r ./dir_1/ ./dir_2/
# Results in: ./dir_2/dir_1/_files_
Kopya sadece dir_1 içeriğini (_files_) dizin içine dir_2 :
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.
İ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.
vimal@vimal-D3H:/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İNİN 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).