سؤال كيف يمكنني الحصول على دليل كامل في sftp؟


أنا فقط أتعلم استخدام sftp ، وأريد نسخ دليل من الكمبيوتر البعيد إلى جهاز الكمبيوتر المحلي. إذا حاولت

get [directory]

يعطيني هذا الخطأ:

Cannot download non-regular file: /home/mpirocch/Documents

get -R لا يعمل ، إما.


168
2017-09-12 21:39


الأصل


تمت إضافة وضع / تكرر متكرر إلى OpenSSH في 5.4 ، والذي تم إصداره في عام 2010. يمكنك التفكير في ترقية خوادمك لأنه يضيف أيضًا الكثير من إصلاحات الأخطاء وميزات أمان أفضل. - Lèse majesté


الأجوبة:


استخدم ال -r (تكراري) العلم:

get -r *

239
2017-11-29 21:38



نشكرك على تقديم إجابة تجيب عن السؤال. - jonnyflash
يعطيني: get: Invalid flag -r - ghbarratt
هذا يعطيني أيضًا إشارة غير صالحة. لست متأكدًا من أن هذا مدعوم على جميع الأنظمة. - Ben
@ بن: عندما سألت هذا السؤال في عام 2009 ، و -r العلم لم يكن موجودا. هل نظامك محدث؟ - Matthew
silvinci لا الكل الأنظمة الحالية. خيار غير قانوني مع CentOS 6.4 openssh-clients-5.3p1-84.1.el6.x86_64 - CrackerJack9


استعمال:

scp -r mpirocch@my-server:/home/mpirocch/Documents Documents

51
2017-09-12 21:51



يعمل هذا ، ولكن سيكون من الجيد أن تكون قادرًا على القيام بذلك من SFTP (حتى أتمكن من رؤية ما أنسخه قبل نسخه). هل هذا ممكن؟ - Matthew
Matthew: لا أعتقد ذلك. لقد سأل نفسي نفس السؤال لبعض الوقت وأفضل إجابة لدي الآن scp -r. أو يمكنك استخدام عميل SFTP متقدم مثل Filezilla. - Cristian Ciupitu
سوف SCP -R اتباع symlinks ... - jsleuth
بعض النظم قد تسمح sftp، لكن لا scp التمكن من. - Turion


استعمال lftp:

lftp sftp://user@host

ثم ، داخل lftp ، cd في الدليل الذي تريد نسخه ، واستخدم mirror الأمر بشكل متكرر لتنزيل الدليل المحدد ، مثله:

mirror

يقبل هذا الأمر الخيارات والوسائط:

مرآة [خيارات] [مصدر [استهداف]]

على سبيل المثال ، -R (أو --reverse) اختيار سيؤدي إلى تحميل شجرة الدليل المحلي إلى الدليل البعيد:

mirror -R

شاهد lftp(1) صفحة رجل في موقع المشروع أو في Debian.org للأوامر والخيارات الأخرى.


38
2018-04-08 13:54



+1 lftp يشبه حزمة صغيرة من السحر والفرح! - WCWedin


لا تستخدم برنامج sftp مباشرة إذا كان بإمكانك العثور على شيء أفضل. بالنسبة إلى Linux ، يدعم العديد من مديري الملفات (على الأقل Nautilus و Dolphin و GNOME و KDE) sftp أصلاً ، وهناك دائماً sshfs. للنوافذ ، هناك WinSCP ، وربما الآخرين. والهدف من كل ذلك هو السماح لك بالوصول إلى الملفات عبر sftp كما لو كانت على ملفات منتظمة ، لذلك ليس عليك أن تهتم بأنك تصل إليها عبر sftp.


15
2017-09-13 03:11



نجاح باهر ، nautilus يعمل بشكل جيد مع SFTP. لقد أضفت إشارة مرجعية في نوتيلوس ، والآن أصبح الأمر سهلاً للغاية. شكر! - Matthew
لقد واجهت مشكلة في الأداء مع Nautilus SFTP. نعم ، إنها مريحة حقًا ، لكنني لم أتمكن من تشبع شبكة Gbit / s 1 عبر Nautilus ، بينما كان سهلًا sftp/ssh واجهة سطر الأوامر كنت (cca 100 ميغابايت / ثانية نقل الملفات). لذلك كانت القضية نوتيلوس في GNU / Linux Mint. - stamster


جيدا ينبغي أن يساعد هذا الدليل قليلا ، مرآة خادم بعيد إلى المجلد المحلي مع LFTP

lftp sftp://user:password@server.org:22 -e 'mirror --verbose --use-pget-n=8 -c /remote/path /local/path'

  • sftp:// = يستخدم بروتوكول SFTP
  • mirror = وضع المرآة
  • verbose = يعرض الملفات التي يتم تنزيلها
  • use-pget-n = عدد الأجزاء ، مفيدة حقًا لتسريع الملفات الكبيرة
  • parallel = تنزيل ملفات المضاعف في نفس الوقت

إذا كنت تريد تنزيل الملفات في التبديل المتوازي خارج use-pget-n=8 مع --parallel=8 

نأمل أن هذا يساعد أي شخص يحتاج إلى مرآة مجلد بعيد إلى مجلد محلي


13
2018-03-10 01:18



شكرا ، عملت هذا بالنسبة لي ، بعد فشل الطرق الأخرى (ولا سيما لا خيار "-r" على sftp). هناك حاجة للإشارة إلى الجزء الأول من الأمر في حالتي ، نظرًا لوجود أحرف دولار في كلمة المرور lftp 'sftp://user:pa$$word@server.org:22' -e 'mirror --verbose --use-pget-n=8 -c /remote/path /local/path' - Jason


محاولة mget بدلا من get.

توضيح: mget  سوف العمل إذا كنت داخل الدليل الذي تريد نسخه ؛ إذا فعلت شيئًا كهذا:

sftp> cd dir_to_get
sftp> mget *

سيحصل على جميع الملفات في هذا الدليل. ومع ذلك ، فإنه لن يحصل بشكل متكرر على محتويات أي أدلة فرعية.


12
2017-09-12 22:34



mget لا يعمل أفضل من الحصول على لي. - Matthew
يتعذر تنزيل الملف غير المنتظم بهذا - Dchris
هذا العمل بالنسبة لي على نظام حيث "لا تعمل -r". - Tchotchke


get -r [directory]

يحصل على [directory] وكل شيء تحتها ، أين r تقف على تكراري. لقد وجدت هذا فقط عن طريق الكتابة help من عند sftp.


9
2018-03-06 16:56



IMO هذا هو أفضل إجابة على هذا السؤال. :) - ramrunner
هذه نسخة مكررة من إجابة من عند 29 نوفمبر 2010 (ما يقرب من عام ونصف العام). - Cristian Ciupitu