Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

[Gelöst] FTP-Login automatisieren

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
Fats
Member
Member
Beiträge: 86
Registriert: 18. Nov 2006, 13:12

[Gelöst] FTP-Login automatisieren

Beitrag von Fats »

Hallo miteinander!

Wie kann ich den Login und Dateitransfer per FTP automatisieren? Ich stelle mir was vor wie:

Code: Alles auswählen

ftp my.host.de -l myuser -p mypassword -upload myfile
Hat da jemand einen Tip?

Viele Grüße
Fats
Zuletzt geändert von Fats am 4. Okt 2008, 13:54, insgesamt 1-mal geändert.
Benutzeravatar
P6CNAT
Advanced Hacker
Advanced Hacker
Beiträge: 1060
Registriert: 24. Jul 2006, 14:26
Wohnort: Mainhausen

Re: FTP-Login automatisieren

Beitrag von P6CNAT »

Hallo Fats,

guck dir mal folgendes Shell Script an.

Code: Alles auswählen

################################################################################
#
#  Script-File   : ftp_put.sh
#  Author        : Georg
#  Creation date : 21.01.1998
#  Description
#
#    This Script uses ftp to send files to foreign systems
#
#    Input parameter:
#       $1 = Destination Node
#       $2 = Username
#       $3 = Password
#       $4 = Destination directory
#       $5 = Filename
#
#  Changes
#
################################################################################

#-------------------------------------------------------------------------------
#  Check input parameter
#-------------------------------------------------------------------------------
if [ "$#" -lt 5 ]
then
  echo ' '
  echo 'Error: Not enough parameter in ftp_send.com!'
  echo ' Sourcenode                      : ' $1
  echo ' Username                        : ' $2
  echo ' Password                        : ' $3
  echo ' Directory z.B /pfad/pfad/   : ' $4
  echo ' Filename eg. "*.csv"         : ' $5
  echo 'Execution terminated!'
  echo ' '
  exit 1
fi


#---------------------------------------------------------------
# Define transfer function
#---------------------------------------------------------------
transfer()
{
 echo "[4m                                                                                [0m"
 echo "Transfer" $5  "von [1m" $1 "[0m" $4
 echo "[4m                                                                                [0m"
 ftp -i -n -v <<EOJ
 open $1
 user $2 $3
 binary
 cd   $4
 put  $5
 close
 quit
EOJ
}

#---------------------------------------------------------------
# Transfer data
#---------------------------------------------------------------
transfer $1 $2 $3 $4 $5

exit
Das kann ein einer crontab laufen oder von anderen Scripten ausgeführt werden.

Gruß
Georg
openSUSE Leap 15.1 64 Bit
KDE-Plasma 5.55
CPU: AMD A8-5500 mit integrierter GPU Typ AMD Radeon HD 7560D
Fats
Member
Member
Beiträge: 86
Registriert: 18. Nov 2006, 13:12

Re: FTP-Login automatisieren

Beitrag von Fats »

Hi Georg!

Vielen Dank für die Hilfe! Sieht gut aus! werde ich nachher mal ausprobieren.

Aber .. hmmm ... was sind das für merkwürdige Sonderzeichen (von [1m" $1 "[0m" $4) in der Transfer-Funktion? Oder ist da was mit dem CharSet schief gelaufen??

Viele Grüße
Fats
spoensche
Moderator
Moderator
Beiträge: 7587
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: FTP-Login automatisieren

Beitrag von spoensche »

Da ist was beim Copy & Paste schiefgelaufen, denke ich.
Benutzeravatar
panamajo
Guru
Guru
Beiträge: 2599
Registriert: 12. Feb 2005, 22:45

Re: FTP-Login automatisieren

Beitrag von panamajo »

Hängt vom verwendeten FTP Client ab.
lukemftp unterstützt die Angabe von Zugangsdaten in der Form ftp://user:pass@server/directory

Bei ncftpget/put können die Zugangsdaten in einer separaten Datei abgelegt werden.
Tooltime
Advanced Hacker
Advanced Hacker
Beiträge: 1202
Registriert: 28. Mai 2008, 17:49

Re: FTP-Login automatisieren

Beitrag von Tooltime »

Code: Alles auswählen

ftp -u ftp://user:password@my.host.de/ file_to_upload
Benutzeravatar
P6CNAT
Advanced Hacker
Advanced Hacker
Beiträge: 1060
Registriert: 24. Jul 2006, 14:26
Wohnort: Mainhausen

Re: FTP-Login automatisieren

Beitrag von P6CNAT »

Hallo,

Betreff Sonderzeichen.
Da ist nichts schief gelaufen, das Script habe ich mal für Unix-Maschinen mit VT-Konsolen, Putty und Co geschrieben. VT-Konsolen verwenden diese Steuerzeichen für die Einstellung von Schriftattributen wie fett, blinkend, hintergrund usw. Die Linux-Konsole müsste diese Steuerzeichen auch interpretieren, kann man aber rausschmeissen.

Gruß
Georg
openSUSE Leap 15.1 64 Bit
KDE-Plasma 5.55
CPU: AMD A8-5500 mit integrierter GPU Typ AMD Radeon HD 7560D
Benutzeravatar
regexer
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 3. Dez 2004, 09:29
Wohnort: $_

Re: FTP-Login automatisieren

Beitrag von regexer »

oder auch:

Code: Alles auswählen

ftp -i user:password@host <<END_OF_FTP
cd pfad
get file.dat
mget *.txt
... weitere Befehle ...
END_OF_FTP
weiteres siehe man ftp
byron1778
Hacker
Hacker
Beiträge: 443
Registriert: 25. Nov 2004, 13:19

Re: FTP-Login automatisieren

Beitrag von byron1778 »

Hallo!

Ich bin mir nicht sicher, ob ich die Frage richtig verstanden habe, aber es gibt noch eine Moeglichkeit unter Linux / Unix FTP zu automatisieren!
Naemlich ueber die Datei .netrc
Mit der kann man auch FTP Vorgaenge automatisieren.

mfG
Antworten