2009-12-12 20:49:15 +0000 2009-12-12 20:49:15 +0000
30
30

Hoe een bestand uploaden vanaf de opdrachtregel met FTP of SSH?

Ik heb dit nog nooit gedaan en ik ben een bash shell script aan het maken om dit voor mij te doen. Ik zal ook verbinding maken via ssh om sommige dingen te doen (waarvan ik al weet hoe ik het moet doen). Dus misschien is er een manier om bestanden te uploaden via ssh, zodat ik het allemaal in één verbinding kan doen?

Hoe kan ik dit doen?

#!/bin/sh

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

Antwoorden (7)

56
56
56
2009-12-12 20:53:32 +0000

Je kunt scp gebruiken om naar een andere machine te kopiëren.

scp <file to upload> <username>@<hostname>:<destination path>
6
6
6
2009-12-12 20:57:38 +0000

Je bent waarschijnlijk op zoek naar SCP of iets dergelijks.

#!/bin/bash

cd ./files-to-upload
scp * user@host:/path/to/upload/files/to

natuurlijk moet je dit aanpassen naar je eigen wensen.Vervang user@host door je echte gegevens. U wordt gevraagd om een wachtwoord om te uploaden.

4
4
4
2009-12-16 12:08:36 +0000

Als je echt ssh moet gebruiken (in plaats van scp) kun je doen:

for filename in *; do
  cat $filename | ssh user@host "cd /path/to/upload/files/to; cat - > $filename"
done

maar gewone scp (zoals tangens suggestie) is het beste.

1
1
1
2009-12-13 07:15:17 +0000

is scp het betere antwoord, omdat het versleuteld zou zijn over SSH.

Echter, als je het over standaard ftp wilt doen, kijk dan eens naar ncftpput. Het is speciaal ontworpen om een bestand te uploaden:

NAAM ncftpput - Internet bestandsoverdracht programma voor scripts

SYNOPSIS ncftpput [options] remote-host remote-directory local-files…

0
0
0
2015-09-04 18:22:34 +0000

Wanneer je het scp (secure copy) commando gebruikt maakt het verbinding met de client en als je nog geen vingerafdruk hebt opgeslagen voor het host apparaat zal het je vragen om het host wachtwoord anders zou het automatisch verbinding moeten maken met de host geloof ik.

0
0
0
2009-12-16 12:43:45 +0000

curl is een goed programma dat verschillende protocollen afhandelt.

0
0
0
2019-02-21 08:22:05 +0000

Voor ec2 instantie, moet je het bestand .pem ook doorgeven,

$scp -i ~/Desktop/amazon.pem ~/Desktop/file.zip ubuntu@ec2-54-166-128-20.compute-1.amazonaws.com:~/data/