Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jet X gesperrt

Anmeldungsdatum: 05.01.2005 Beiträge: 447
|
Verfasst am: 05.08.2006, 08:07 Titel: Batch Problem |
|
|
Hi Leuz,
ich habe nen kleines (großes?) Batch Problem, und da ich weiß das ihr euch mit Batch auskennt Frage ich euch mal:
Ich möchte einen kompletten Ordner mit Batch kopieren und an meinen Space schicken... so z.B:
C:\Dokumente und Einstellungen\%User\Eigene Dateien www.meinspace.de
so... aber das klappt ja so net... also was ist da falsch?
Ist das mit dem %User% richtig so?
Achso, das Verzeichniss auf meinen Space hat schon 777 (Schreib&Lese)
-Rechte.
Grüße
JET _________________ Courage ist gut, aber Ausdauer ist besser. |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 05.08.2006, 08:29 Titel: |
|
|
Ich glaub dir nicht, das das dein ernst ist.
Du kannst doch nicht "einfach so" auf einen HTTP Server Daten Upload?
In der Regel gehen die Daten an einen FTP Server.
Also mal die Adresse vervöllstandigen.
Dann hast du auch keinen Kopierbefehl drin.
Zu %User%:
Gemäss Microsoft Doku willst du %USERPROFILE%. _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
Manuel

Anmeldungsdatum: 23.10.2004 Beiträge: 1271 Wohnort: Bayern
|
Verfasst am: 05.08.2006, 11:12 Titel: |
|
|
Jetzt mal ernsthaft: Die Sache ist ja die, dass man "einfach so" wie Sebastian es demonstriert keine Daten auf dem Webspace kriegt. Man muss, wie bei einem FTP-Programm, erst eine Verbindung zum Webspace herstellen (gemäß per Username + Passworteingabe) und sich dann noch genau an die Standards halten, wie man die Syntax zum Kopieren eingibt. Ich kann da leider nicht weiterhelfen, da mir eben jene Syntax zum Herstellen der Verbindung nicht vertraut sind^^. _________________ DL Walk (Denkspiel) | DL Malek (Denkspiel) | DL Warrior (ASCII-Adventure) | DL Sokodos (Sokoban-Klon)
---
www.astorek.de.vu |
|
Nach oben |
|
 |
Devilkevin aka Kerstin

Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 05.08.2006, 13:00 Titel: |
|
|
Für Login folgendes eingeben:
Code: | ftp
open
jetx.je.funpic.de (ohne www)
username
password
|
und dann zum hoch/runterladen
Code: |
get (datei runterladen)
send (dateihochladen)
|
verbindung trennen
ftp beenden
_________________ www.piratenpartei.de |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 05.08.2006, 13:05 Titel: |
|
|
So Jet, ich hab dir mal ein passendes Programm geschrieben. Es ist getestet und funktioniert:
Code: | DIM upl$, ziel$, filter$, username$, passwort$, hostname$, Pfad$, cst$
INPUT "Hochzuladenes Verzeichnis: ", upl$
INPUT "Remote Zielverzeichnis: ", ziel$
INPUT "Filter (z.B. *.txt oder *.*): ", filter$
INPUT "FTP-Benutzername: ", username$
INPUT "FTP-Passwort: ", passwort$
INPUT "FTP-Host (Server): ", hostname$
PRINT
Pfad$=ENVIRON$("TEMP")
IF Pfad$ = "" THEN
PRINT "Die Umgebungsvariable %TEMP% konnte nicht gelesen werden."
INPUT "Temporäres Verzeichnis manuell eingeben: ", Pfad$
PRINT
END IF
IF Pfad$ = "" THEN END
If Right$(Pfad$, 1) <> "\" THEN Pfad$=Pfad$+"\"
If RIGHT$(upl$, 1) <> "\" THEN
cst$="DIR /B " + upl$ + "\" + filter$ + " >" + Pfad$ + "FILELST.TMP"
ELSE
cst$="DIR /B " + upl$ + filter$ + " >" + Pfad$ + "FILELST.TMP"
upl$=LEFT$(upl$, LEN(upl$)-1)
END IF
PRINT "Dateiliste wird erstellt:"
PRINT " => ";
COLOR 10
PRINT cst$
COLOR 7
SHELL cst$
PRINT
OPEN Pfad$ + "FILELST.TMP" FOR INPUT AS #1
OPEN Pfad$ + "FTPCMD.TMP" FOR OUTPUT AS #2
PRINT #2, "user "; username$; " "; passwort$
PRINT #2, "cd "; ziel$
PRINT #2, "binary"
DO UNTIL EOF(1)
LINE INPUT #1, dateiname$
PRINT #2, "send "; upl$; "\"; dateiname$
LOOP
PRINT #2, "quit"
CLOSE #1, #2
SHELL "ftp.exe -n " + hostname$ + " <" + Pfad$ +"FTPCMD.TMP"
PRINT
PRINT "Vorgang ausgeführt! Beliebige Taste zum Beenden drücken."
SLEEP
KILL Pfad$ + "FTPCMD.TMP"
KILL Pfad$ + "FILELST.TMP" |
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Jet X gesperrt

Anmeldungsdatum: 05.01.2005 Beiträge: 447
|
Verfasst am: 05.08.2006, 15:48 Titel: |
|
|
Jo... also ist das doch net so einfach... ich hab nen FTP!
Bin jetzt erstmal nen bischen durcheinander gekommen... bei den ganzen Befehlen... @Sebastian: Danke für dein Prog, werde ich im Notfall auch benutzen nur müsste die Sache eigentlich auf jedenfall in Batch sein.... das Verzeichniss welches ich Kopieren will steht auch schon fest, das heißt es darf auf keinen Fall ne Abfrage des Verzeichnisses kommen!
So, könnte das hier den gehen:
Code: | ftp
open
stapfield.st.funpic.de
username
password
send C:\Dokumente und Einstellungen\%userprofile%\Eigene Dateien
disco
quit |
Klappt das jetzt? Wichtig ist das er wirklich das ganze Verzeichnis kopiert!
Danke für eure Hilfe.
Grüße
JET _________________ Courage ist gut, aber Ausdauer ist besser. |
|
Nach oben |
|
 |
Devilkevin aka Kerstin

Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 05.08.2006, 17:26 Titel: |
|
|
Nein du musst auch noch den Pfad der Remotedatei angeben. _________________ www.piratenpartei.de |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 05.08.2006, 18:09 Titel: |
|
|
Jet X hat Folgendes geschrieben: | Jo... also ist das doch net so einfach... ich hab nen FTP! |
Anders ginge es auch nur schwierig. Über HTTP könntest du nur was hochladen, wenn du die HTTP-Serveranfrage selbst über Winsock abwickelst.
Zitat: | @Sebastian: Danke für dein Prog, werde ich im Notfall auch benutzen nur müsste die Sache eigentlich auf jedenfall in Batch sein.... das Verzeichniss welches ich Kopieren will steht auch schon fest, das heißt es darf auf keinen Fall ne Abfrage des Verzeichnisses kommen! |
Jet, mittlerweile bist du doch so ein Insider, dass du diese Zeile
Code: | INPUT "Hochzuladenes Verzeichnis: ", upl$ |
in Folgendes ändern können müsstest:
Code: | upl$ = "C:\JetsFest\erPfad\" |
Was haste'n überhaupt damit vor? Datenklau via FTP?  _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 05.08.2006, 20:16 Titel: |
|
|
Code: | send C:\Dokumente und Einstellungen\%userprofile%\Eigene Dateien |
(ich sag nicht was ich denke, ich sag nicht was ich denke)
Wenn schon dann
Code: | send %userprofile%\Eigene Dateien |
_________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
 |
Jet X gesperrt

Anmeldungsdatum: 05.01.2005 Beiträge: 447
|
Verfasst am: 05.08.2006, 20:22 Titel: |
|
|
Zitat: | ftp
open
stapfield.st.funpic.de
username
password
send C:\Dokumente und Einstellungen\%userprofile%\Eigene Dateien
disco
quit |
Ja... aber ich kann/will das nicht in QBasic umsetzten... das soll aufjedenfall in Batch passieren... könnte mir dann mal bitte jemand sagen ob das hier so richtig ist? _________________ Courage ist gut, aber Ausdauer ist besser. |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
|
Nach oben |
|
 |
Jet X gesperrt

Anmeldungsdatum: 05.01.2005 Beiträge: 447
|
Verfasst am: 05.08.2006, 20:34 Titel: |
|
|
Zitat: | ftp
open
stapfield.st.funpic.de
username
password
send %userprofile%\Eigene Dateien
disco
quit |
@Michael Frey:
O.k ich hab es mit vollgender Version ^ versucht.... klappt aber net... also muss noch irgendwas falsch sein oder? _________________ Courage ist gut, aber Ausdauer ist besser. |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 05.08.2006, 20:35 Titel: |
|
|
Jet X hat Folgendes geschrieben: | Zitat: | ftp
open
stapfield.st.funpic.de
username
password
send C:\Dokumente und Einstellungen\%userprofile%\Eigene Dateien
disco
quit |
Ja... aber ich kann/will das nicht in QBasic umsetzten... das soll aufjedenfall in Batch passieren... könnte mir dann mal bitte jemand sagen ob das hier so richtig ist? |
Das ist keine gültige Batchdatei. Kann nicht funktionieren. Sonst noch Wünsche?  _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Devilkevin aka Kerstin

Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 05.08.2006, 20:37 Titel: |
|
|
Ich habs oben schonmal geschrieben, bei send muss noch die RemoteDatei hin! z.B.
Code: | send C:\Dokumente und Einstellungen\%userprofile%\Eigene Dateien\musik.mp3 musik.mp3 |
... sonst weis ftp.exe ja nicht in welches Verzeichniss dun die Datei laden willst.
Oder hier extra für dich
... und schon ist die datei bei http://dk2.dk.funpic.de/changeloge.txt  _________________ www.piratenpartei.de |
|
Nach oben |
|
 |
Jet X gesperrt

Anmeldungsdatum: 05.01.2005 Beiträge: 447
|
Verfasst am: 05.08.2006, 22:07 Titel: |
|
|
@Devilkevin:
O.K hab jetzt volgende Lösung:
Code: | cd %userprofile%\Cookies\
cd..
ftp
open funpic.xxxxx.xxxxx
send %userprofile%\Eigene Dateien funpic.xxxxx.xxxxx\folder\
disco
quit |
jetzt muss ich nurnoch FTP Befehle einbauen...
Kannst du (Devilkevin) mir mal den Quellcode dazu schicken?
Net nur nen Dos Fenster... das hilft net so wirklich?!
Grüße
JET _________________ Courage ist gut, aber Ausdauer ist besser. |
|
Nach oben |
|
 |
Eisbaer

Anmeldungsdatum: 16.10.2004 Beiträge: 354 Wohnort: Deutschland,Bayern
|
Verfasst am: 05.08.2006, 22:19 Titel: Re: FTP Zugriff |
|
|
@Jet X weiter Oben wurde ja schon ein Code von Sebastian gepostet.
Ähm erst mal warum muss es den in Batch sein ?
Kann es nicht auch ne VB Applikation sein ?
Und ein bisschen mehr Mitarbeit deinerseits währe wohl auch angebracht anstatt immer nur den genauen Quell Ordner zu nennen.
Weil eigentlich ließt sich das hier wie Hausaufgaben machen, etwas mehr selbst initiative für dein Projekt solltest du schon zeigen, denn warum sollen wir dir hier den kompletten Code vorkauen so das du ihn nur noch mit Strg + C und dann Strg + V einsetzten kannst.
Du willst es ja machen.
Also Such dir eine nette ftp DLL Datei bei google am besten die eine gute Beschreibung der Subs hat und dann entwickle eine kleine saubere FreeBasic Version die dir den Job dann erledigt. _________________ Eigene Webseite:
http://www.eisbaer-studios.de |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 05.08.2006, 23:22 Titel: |
|
|
Ich gebe Eisbär völlig recht. Ich habe dir eine einfach verständliche QB-/FB-Lösung zu deiner Anfrage geliefert. Du kannst sie jederzeit so umgestalten, dass es keine Bildschirmausgaben gibt und dass der User nichts eingeben muss. Das verweigerst du und schreibst wirres Zeug.
Jet X hat Folgendes geschrieben: | @Devilkevin:
O.K hab jetzt volgende Lösung:
Code: | cd %userprofile%\Cookies\
cd..
ftp
open funpic.xxxxx.xxxxx
send %userprofile%\Eigene Dateien funpic.xxxxx.xxxxx\folder\
disco
quit |
jetzt muss ich nurnoch FTP Befehle einbauen...
Kannst du (Devilkevin) mir mal den Quellcode dazu schicken?
Net nur nen Dos Fenster... das hilft net so wirklich?!
Grüße
JET |
Ich gebe dir eine kleine Hilfestellung: Stell dir vor, Jet, du wärst CMD. Ja, jetzt bist du CMD. Versuch dich in die Kommandozeile hineinzufühlen - in die weiße Schrift auf schwarzem Grund. Soweit so gut. Vom User bekommst du jetzt eine Batchdatei vorgesetzt. Die enthält einige Zeilen. Als echte DOS-Eingabeaufforderung weißt du, dass man Batchdateien auch Stapelverarbeitungsdateien nennt. Eine Zeile wird nach der anderen abgearbeitet. Der User, der nichts von Batchprogrammierung versteht, schreibt dir Folgendes:
Code: | ftp.exe
open funpic.xxxxx.xxxxx
send %userprofile%\Eigene Dateien[...] |
Selbstverständlich weißt du als CMD, dass das Käse ist, aber du tust deinen Job und arbeitest die Zeilen nach für nach ab. Zuerst führst du FTP aus. Das ist ein Kommandozeilenprogramm, das Windows beiliegt. Der User hat keine Parameter an das Programm übergeben und keine Eingabeumleitung gemacht. Obwohl das unsinnig ist, führst du den Befehl aus. Der User bekommt FTP so zu Gesicht, als hätte er unter START, Ausführen "FTP" eingegeben. Er soll nun etwas eingeben. Währenddessen wartest du. Der User versteht nicht, wieso nichts hochgeladen wird. Du hältst ihn für einen Noob, weil er die Anweisungen falsch formuliert, doch davon ahnt er nichts. Nachdem er FTP frustriert geschlossen hat, führst du seinen nächsten Befehl, nämlich "OPEN" aus. Hm.... Im Programmverzeichnis gibt es keine OPEN.EXE, keine OPEN.COM, auch in den Verzeichnissen aus der Umgebungsvariable %PATH% findest du nichts. Enttäuscht teilst du dem Benutzer mit, dass du leider an seinen Befehlen gescheitert bist. Du schreibst ihm: "Der Befehl ist entweder falsch geschrieben oder konnte nicht gefunden werden." [...]
So Jet, jetzt überleg mal ganz scharf, warum dieser Code
Code: | cd %userprofile%\Cookies\
cd..
ftp
open funpic.xxxxx.xxxxx
send %userprofile%\Eigene Dateien funpic.xxxxx.xxxxx\folder\
disco
quit |
als bat-Datei nicht den gewünschten Effekt bringt.
[OT:für Insider]Dieser Thread hier erinnert mich irgendwie an "CV06 Pro Try" aus dem BB-Forum... [/Insider] _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 06.08.2006, 12:19 Titel: |
|
|
Wahrscheinlich wollte Jet nur erreichen, daß er auch einen Hinweis auf eine Hilfeseite bekommt..
Alsdann(Auszug): Code: | Syntax
ftp [-v] [-d] [-i] [-n] [-g] [-s:Dateiname] [-a] [-w:Fenstergröße] [-A] [Host]
..
-s:Dateiname
Gibt eine Textdatei an, die ftp-Befehle enthält. Diese Befehle werden nach dem Start von ftp automatisch ausgeführt.
Dieser Parameter lässt keine Leerzeichen zu. Verwenden Sie diesen Parameter statt der Umleitung (<).
.. | Wenn du also deine FTP-Befehle in die Datei "Jet-Input4.FTP" schreibst, solltest du
mit dem Befehl FTP s:Jet-Input4.FTP die Ausführung erreichen können..
(ungetestet, da ytwinky.freebasic.de down ist..)
..ich hoffe, das war nicht zu simpel für einen 'Blitzmerker'
Ftp hat übrigens eine Hilfe-Funktion, gib am FTP-Prompt einfach ? ein
oder schau ins Hilfe- und Support-Zentrum oder bei Obi(ach nein, da sicher nicht )
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
|