2 votes

Transférer le fichier tar.gz en continu depuis le serveur FTP

Voici la situation : j'ai un fichier tar.gz sur un serveur FTP qui peut contenir un nombre arbitraire de fichiers.

Maintenant, ce que j'essaie d'accomplir, c'est d'avoir ce fichier en streaming et de le télécharger dans HDFS à travers un job Hadoop. Le fait que ce soit Hadoop n'est pas important, à la fin ce que j'ai besoin de faire est d'écrire un script shell qui prendrait ce fichier depuis le ftp avec wget et écrirait la sortie dans un flux.

La raison pour laquelle j'ai vraiment besoin d'utiliser des flux est qu'il y aura un grand nombre de ces fichiers, et chaque fichier sera énorme.

C'est assez facile à faire si j'ai un fichier gzip et que je fais quelque chose comme ça :

wget -O - "ftp://${user}:${pass}@${host}/$file" | zcat

Mais je ne suis même pas sûr si c'est possible pour un fichier tar.gz, en particulier puisqu'il y a plusieurs fichiers dans l'archive. Je suis un peu confus sur la direction à prendre pour cela, toute aide serait grandement appréciée.

3voto

Janne Pikkarainen Points 31244

Que diriez-vous

wget -O - "ftp://${user}:${pass}@${host}/$file" | tar xfz -

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X