Yanıtlar:
Düzenli bir dosya, bir dizin olmayan veya adlandırılmış yöneltmeler, aygıtlar, yuvalar, kapılar vb. Gibi daha egzotik türdeki “özel” dosyaların olmadığı bir dosyadır . Sembolik bağlantılar da normal dosyalar değildir, ancak hedefleri gibi davranırlar. Bir uygulama dosyanın içeriğine erişiyor.
root@IP:
Kopyanın kaynağı ve /path/to/picture.jpg
hedef olarak geçtiniz . Kaynak, kullanıcının root
makinedeki giriş dizinidir IP
. Bu bir hedef olarak kullanışlıdır, fakat kaynak olarak kullanılamaz. Bir dizine dosya kopyalamak için ne yazdığınız gerekli; seçeneği scp
olan özyinelemeli bir kopya istemediğiniz sürece bir dizini kopyalayamazsınız -r
(ve bir dizinin bulunduğu varolan bir dosyanın üzerine yazmayı reddeder -r
, ancak kaynak normal bir dosya olsaydı sessiz bir şekilde düzenli bir dosyanın üzerine yazardı).
/path/to/picture.jpg
Kopyalamak istediğiniz dosyanın uzak makinesindeki yol buysa , dosya adını ana bilgisayar belirtimine yapıştırmanız gerekir. :
Ana bilgisayar adını uzak yoldan ayıran iki noktadır. Siz de bir hedef belirlemeniz gerekecek.
scp root@IP:/path/to/picture.jpg /some/destination
Yerel dosyayı /path/to/picture.jpg
uzak ana bilgisayara kopyalamak istiyorsanız , değişkenleri değiştirmeniz gerekir. Unix copy komutları, ilk önce kaynakları ve hedefi en son duruma getirir.
scp /path/to/picture.jpg root@IP:
Uzak dosyayı /path/to/picture.jpg
yerel olarak aynı konuma kopyalamak istiyorsanız yolu tekrarlamanız gerekir. Kabuğunuzun sizin için tekrarlama işlemini yapmasını sağlayabilirsiniz (daha az yazma, daha az okunabilirlik).
scp root@IP:/path/to/picture.jpg /path/to/picture.jpg
scp {root@IP:,}/path/to/picture.jpg
Bir dizini kopyalarken, -r
seçeneği kullanmalısınız :
scp -r root@IP:/path/to/file /path/to/filedestination
sözdizimi sorunu - arasındaki boşlukları kaldırın
Kök @ IP:
ve
/yol, yörünge
scp
artık bir hedefiniz yok.
not a regular file
-r
, scp argümanı olarak kullanın .
scp root@IP:/path/to/file /path/to/filedestination
Yukarıdaki komut bir dosyayı uzak sunucudan bilgisayarınıza kopyalar. Yalnızca yazarsanız scp root@IP:
, root dizinini kopyalamaya çalışın (scp users home .
).
Yani dosyanın tam yolunu belirtmeniz gerekir.
Bu hatayı alıyorsunuz çünkü bir klasörü kopyalamaya çalışıyorsunuz, dosyaya değil, bu nedenle dosyalarınızı yinelemeli olarak -r
seçeneğini kullanarak kopyalamalısınız.
Dosyaları uzak makineden yerel makineye kopyalarken aşağıdaki komutu kullanın
scp -r root@RemoteIP:/path/to/file /path/to/filedestination
VEYA
Dosyaları yerel makineden uzak makineye kopyalarken
scp -r /path/to/file root@RemoteIP:/path/to/filedestination
scp root@IP:/path/to/*.jpg /path/to/filedestination/
Bu işe yarayacak (en azından Mac'imde)