2016-07-06 26 views
-1

Hier ist mein ftp-SkriptUmgang mit Daten in FTP

#!/bin/sh 
FTPHOST='dedibackup-dc2.xx.net' 
FTPUSER='sd-xxxxx' 
FTPPASSWD='xxxxxxxxxxxxxx' 

ftp -n -v $FTPHOST << EOT 
ascii 
user $FTPUSER $FTPPASSWD 
prompt 

now=$(date +"%d-%m-%Y") 
echo $now 
bye 
EOT 

Die Ausgabe dieses Skripts ist:

Trying 62.210.XX.XX... 
Connected to dedibackup-dc2.XXXX.net (62.210.XX.XX). 
220 server ready - login please 
530 login first 
331 password required 
230 login accepted 
Interactive mode off. 
?Invalid command 
?Invalid command 
221 goodbye 

ich gegoogelt und einige Beiträge zu Terminen gesehen, aber alle zur Verfügung gestellten Formate für mich nicht funktioniert.

Bitte geben

Dank im Vorgriff

+1

Sie können nicht Bash-Befehle in FTP verwenden – 123

+0

@ 123 gibt es eine andere Möglichkeit, es zu erreichen? – LifeSaver

+0

@ 123 '! Echo $ now' hat gearbeitet. Wie hast du gesagt, Bash-Befehle funktionieren nicht in FTP? – LifeSaver

Antwort

1

bis hin zu FTP, das Ausführen von Befehlen umfassen kann, unter Substitution von Variablen und dergleichen. Das heißt, statt zu schreiben:

ftp < ftp_args> < < EOT
blah
bloho $ VAR1
bleeeoogah $ (einige cmd)
EOT

nur dies tun:

(echo blah; echo bloho $ VAR1; echo bleeeoogah $ (some_cmd)) | ftp

+0

Danke Ich habe bash und ftp Befehle gemischt – LifeSaver