it-swarm.asia

كيفية تحميل ملف من سطر الأوامر باستخدام FTP أو SSH؟

لم أفعل هذا من قبل ، وأقوم بإنشاء نص باش شل للقيام بذلك من أجلي. سأكون أيضًا متصلًا عبر ssh للقيام ببعض الأشياء (التي أعرفها بالفعل كيف أقوم بذلك). لذلك ربما هناك طريقة لتحميل الملفات عبر ssh حتى أتمكن من فعل كل شيء في اتصال واحد؟

كيف يمكنني أن أفعل هذا؟

#!/bin/sh

cd ./files-to-upload
#upload the files
29
Andrew

يمكنك استخدام scp للنسخ إلى جهاز بعيد.

scp <file to upload> <username>@<hostname>:<destination path>
55
tangens

ربما كنت تبحث عن SCP أو ما شابه ذلك.

#!/bin/bash

cd ./files-to-upload
scp * [email protected]:/path/to/upload/files/to

بالطبع يجب أن يعدل هذا حسب رغبتك. استبدل user @ Host بمعلوماتك الحقيقية. ستتم مطالبتك بكلمة مرور للتحميل.

6
John T

إذا كنت حقًا يجب استخدام ssh (بدلاً من scp) ، يمكنك القيام بما يلي:

for filename in *; do
  cat $filename | ssh [email protected] "cd /path/to/upload/files/to; cat - > $filename"
done

لكن scp منتظم (مثل tangens اقتراح) هو الأفضل.

4
Jimmy Hedman

scp هو الحل الأفضل لأنه سيتم تشفيره عبر SSH.

ومع ذلك ، إذا كنت ترغب في القيام بذلك عبر بروتوكول نقل الملفات القياسي ، فراجع ncftpput. إنه مصمم خصيصًا لتحميل ملف:

NAME ncftpput - برنامج نقل ملفات الإنترنت للنصوص

SYNOPSIS ncftpput [خيارات] الملفات المحلية للدليل البعيد للمضيف البعيد ...

1
DuPie

curl هو برنامج جيد يعالج العديد من البروتوكولات.

0
Joe Internet

بالنسبة إلى مثيل ec2 ، يجب عليك تمرير ملف .pem أيضًا ،

$scp -i ~/Desktop/Amazon.pem ~/Desktop/file.Zip  [email protected]:~/data/
0
Elavarasan

عندما تستخدم scp (نسخة آمنة) الأمر الذي يتصل به العميل وإذا لم يكن لديك بالفعل بصمة محفوظة لجهاز المضيف ، فسوف نطلب منك كلمة مرور المضيف وإلا يجب أن تتصل تلقائيًا بالمضيف الذي أعتقد.

0
David