Forum: PC Hard- und Software FTP durchsuchen


von Lukas (der von der Insel) (Gast)


Lesenswert?

Hallo

Ich befinde mich zur Zeit auf Reise. Auf meinem NAS zuhause läuft ein 
FTP Server auf den ich gelgentlich zugreife. Nun müsste ich dort eine 
Datei suchen da ich nicht weiß, wo sie genau liegt, d.h. ich kenne nur 
den Namen. Wie kann ich das am effezientesten, auf dem Server liegen gut 
3TB Daten...

Lukas

von raketenfred (Gast)


Lesenswert?

jemanden zu hause anrufen- der bitte strg+f drückt^^

von Klaus W. (mfgkw)


Lesenswert?

Das kommt jetzt wohl etwas auf deinen ftp-Client an.
Ich habe mal eben nachgesehen, bei meinem unter Debian
bekomme ich mit "dir -R" ein rekursives Verzeichnis (also
inkl. aller Unterverzeichnisse) angezeigt, mit
"dir -R liste.txt" wird dieselbe Ausgabe lokal in der Datei
liste.txt abgelegt.

Diese könnte man dann lokal nach dem gesuchten Namen durchforsten.

von Klaus W. (mfgkw)


Lesenswert?

Nachtrag: ncftp kann die Umleitung in eine lokale Datei nicht
direkt. Aber dafür ist da ein Programm ncftpls dabei, damit
geht es.

Man würde also auf dem lokalen Rechner laufen lassen:
1
ncftpls -R ftp://derftpserverimnetz  >liste.txt
bzw.
1
ncftpls -R ftp://derftpserverimnetz/ver/zeich/nis  >liste.txt
und hätte dann in liste.txt das komplette Inhaltsverzeichnis.

ncftp sollte auch unter Windows laufen:
http://www.ncftp.com/

von Lukas (der von der Insel) (Gast)


Lesenswert?

danke schon mal. Dauert das aber nicht trotzdem extrem lang? Ich dachte 
eher an eine Lösung mit der ich z.b. über Telnet auf den Server 
zugreife, diesen dann autonom ein Inhaltsverzeichnis in txt Form 
anfertigen lasse und dieses dann zum Laptop den ich hier hab 
übertrage....

von Klaus W. (mfgkw)


Lesenswert?

telnet geht, wenn dein NAS per telnet erreichbar ist.
Wahrscheinlich (hoffentlich) eher nicht.

Ich habe es bei mir so eingerichtet, daß meines per ssh erreichbar ist.
Dazu muß der ssh-Dämon drauf laufen, und der entsprechende Rechner
von außen erreichbar sein (also entweder global sichtbare IP haben
oder bei einem NAT muß der Router z.B. per dyndns adressierbar sein
sowie die ssh-Verbindung an das NAS weiterreichen).
Wenn du das nicht so eingerichtet hast, wird es auch nix mehr
von außen...

von Klaus W. (mfgkw)


Lesenswert?

Lukas (der von der Insel) schrieb:
> Dauert das aber nicht trotzdem extrem lang?

Das hängt davon ab, wie schnell der Rechner sucht, wie schnell die 
Übertragung ist und wieviele Dateien es sind, die gelistet werden
müssen (nicht: wie groß sie sind).

Was heißt "extrem lang"?

von Klaus W. (mfgkw)


Lesenswert?

Lukas (der von der Insel) schrieb:
> Ich dachte
> eher an eine Lösung mit der ich z.b. über Telnet auf den Server
> zugreife, diesen dann autonom ein Inhaltsverzeichnis in txt Form
> anfertigen lasse und dieses dann zum Laptop den ich hier hab
> übertrage

Das würde auch nicht schneller gehen.
Schneller wäre nur, mit ssh oder telnet zum Server gehen und dort
mit find nach der Datei suchen zu lassen, also gar nicht alle
Namen zu übertragen.
Das geht aber halt wie gesagt nur, wenn du einen Zugang eingerichtet
hast.

Die ftp- bzw. ncftpls-Variante geht schon bei ftp-Zugang.

von Klaus W. (mfgkw)


Lesenswert?

Ist dein NAS zuhause gleichzeitig der Router, z.B. eine Fritzbox
mit angeklemmtem USB-Speicher?
Oder reicht der Router die ftp-Verbindung an ein eigenes NAS durch?

von Lukas (der von der Insel) (Gast)


Lesenswert?

ne, der Router leitet die entsprechenden Ports weiter an ein NAS 
(Synology)

Klaus Wachtler schrieb:
> Das würde auch nicht schneller gehen.
> Schneller wäre nur, mit ssh oder telnet zum Server gehen und dort
> mit find nach der Datei suchen zu lassen, also gar nicht alle
> Namen zu übertragen.

das ist es ja grad, ich wollte die Dateien nicht übertragen sondern die 
Auflistung der Verzeichnise und Dateien direkt vom NAS vornehmen lassen 
und anschließend die erzeugte Liste übertragen

von Klaus W. (mfgkw)


Lesenswert?

das geht m.W. dann nur mit telnet oder ssh, also wahrscheinlich
nicht (bei dir wahrscheinlich nicht, bei mir schon :-)

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Lukas (der von der Insel) schrieb:
> das ist es ja grad, ich wollte die Dateien nicht übertragen sondern die
> Auflistung der Verzeichnise und Dateien direkt vom NAS vornehmen lassen
> und anschließend die erzeugte Liste übertragen

Nichts anderes macht die "ls -R"-Variante.

Um herauszufinden, wie die auf einem ftp-Server gespeicherten Dateien 
heißen, muss man sie nicht herunterladen ...

von Hänschen (Gast)


Lesenswert?

ok danke schon mal. Wird bei der Durchforstung mit "ls -R" eine Datei 
angelegt? Wo finde ich die?

von Michael H. (michael_h45)


Lesenswert?

ls -R * > dat.ei
dann hast du einen index deines ftp.
danach
cat dat.ei |grep -i dateiname

von Hänschen (Gast)


Lesenswert?

ok, ich muss zugegeben ich bin ein Linux-Newbie...
Beim Eingeben bekomme ich eine Fehlermeldung:

Server> ls -R * > myindex.txt
Server> -sh: cannot create myindex.txt: Permission denied

von Klaus W. (mfgkw)


Lesenswert?

Lukas (der von der Insel) (Gast) ist jetzt Hänschen?
Geht es noch um das gleiche Problem?
telnet geht jetzt auf einmal doch?

von Hänschen (Gast)


Lesenswert?

Klaus Wachtler schrieb:
> Lukas (der von der Insel) (Gast) ist jetzt Hänschen?
> Geht es noch um das gleiche Problem?
> telnet geht jetzt auf einmal doch?

ja, Lukas (Notebook) ist Hänschen (Netbook) :)
es geht um das selbe Problem
FTP ging schon immer, hatte das eigentlich auch ganz klar geschrieben...

von Klaus W. (mfgkw)


Lesenswert?

ok, dann musst du halt zu DEINEM ftp-Client mal die Hilfe zum
ls-Kommando anschauen.

Du hast versucht (offenbar auf dem NAS mit ftp eingeloggt?):
 Server> ls -R * > myindex.txt

Bei meinem ftp müsste man das > weglassen, also
 Server> ls -R . myindex.txt

. steht natürlich für das aktuelle Verzeichnis auf dem Server, und
myindex.txt wird dann die lokale Datei bei deinem lokalen Rechner
(wo der Client läuft).

Das kann aber bei jedem ftp-Client anders sein.
Lesen musst du schon selber.

Wenn dein ftp das nicht kann, musst du es halt mit dem
erwähnten ncftpls machen.
Das läuft auf dem lokalen Rechner, loggt sich auf dem Server
ein, holt das Inhaltsverzeichnis und gibt es auf dem lokalen
Rechner auf der Standardausgabe aus.
Dort kann man es mit >myindex.txt in eine Datei umleiten.

> FTP ging schon immer, hatte das eigentlich auch ganz klar geschrieben...
Aber mir war nicht klar, ob du das bist und und ob die Zeile:
 Server> ls -R * > myindex.txt
mit ftp erzeugt wurde oder telnet oder was auch immer.
Ich sitze doch nicht an deinem Rechner und bin nicht Jesus.

von Hänschen (Gast)


Lesenswert?

Hänschen schrieb:
> FTP ging schon immer, hatte das eigentlich auch ganz klar geschrieben...

sorry, sollte telnet heißen, ich logge mich mit telnet ein...

von Michael H. (michael_h45)


Lesenswert?

Hänschen schrieb:
> ok, ich muss zugegeben ich bin ein Linux-Newbie...
Nimm cuteftp. Ist bunt und kann suchen.

von Klaus W. (mfgkw)


Lesenswert?

Du bist jetzt also mit telnet auf dem Ding unterwegs?
Und es läuft etwas Linuxähnliches darauf?

Dann brauchst du nicht das ganze Verzeichnis aller Dateien holen.
Probier mal:
1
   find . -name "wie die datei heisst"
oder:
1
   find . -name "*Teil des Namens*"

Groß-/Kleinschreibung ist relevant!

Wenn alles gut geht, bekommst du den gesuchten Namen angezeigt.
Den kannst du anschließend mit ftp holen.

von Hänschen (Gast)


Lesenswert?

Klaus Wachtler schrieb:
> find . -name "*Teil des Namens*"

super, der Tipp war Gold wert, vielen Dank. Hat nun knapp eine Stunde 
gedauert, aber die Datei wurde gefunden :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.