Foros de daboweb
HARDWARE Y SISTEMAS OPERATIVOS, GNU/Linux, Windows, Mac => GNU/Linux, Unix, *BSD and Free Software, Android => Mensaje iniciado por: elmohino en 20 de Octubre de 2008, 08:31:25 pm
-
Hola de nuevo.
Resulta que he conseguido un script que funciona como gestor de subidas de la página RapidShare (hecho por ellos mismos). El script se encuentra aquí:
http://images.rapidshare.com/software/rsapiresume.pl
Es estupendo. Me permite subir archivos tanto de forma libre como a cuentas premium. Verifica automáticamente si el MD5 del archivo subido es igual al de origen. Crea un fichero de texto con los enlaces de descarga resultantes. Además, permite la interrupción de las subidas y su posterior reanudación por donde se quedó.
Es necesario que la distro de Linux tenga una cosa llamada Perl. Su funcionamiento en la línea de comandos es sencillo:
$ ./rsapiresume.sh [nombre_fichero_a_subir] free[para subida libre] prem[para cuentas premium] col[para cuentas collector] [login] [password]
Ahora bien, tiene, según mi opinión, un inconveniente: en la consola solamente se le puede indicar UN achivo a subir; no se puede indicar varios, ni con el comando "*", ni el contenido de un directorio. Para subir varios ficheros sin estar delante del ordenador debo abrir tantas consolas como ficheros quiera subir y se subirán todos al mismo tiempo...
No sé por qué han hecho así el script. Entonces, mi pregunta es si es posible, en una misma consola, repetir los comandos de subida para que, una vez terminado el primero, empezase a subir el segundo, y así sucesivamente. No sé si me explico.
Gracias por las respuestas.
-
Mírate esto: http://espaciolinux.com/foros-tema-t38917.html
-
Estupendo. Un script que automatiza la subida de varios ficheros con el script oficial de RapidShare.
Pero hay que crear un listado en un fichero de texto con las rutas de los ficheros a subir. No sabrá Vd. qué comando o aplicación debo usar para conseguir esas rutas de una sola vez y no tenerlas que escribir manualmente, ¿verdad?
Gracias.
-
Con el comando ls puedes listar el contenido de una carpeta y copiarlo, pero se muestra en columnas y no en lineas, no sé si te servirá.
-
Pues la verdad con ese comando no es muy cómodo para copiar y pegar. De todas formas, muchas gracias por este nuevo script. Preguntaré en la web del enlace que proporcionas.
Un cordial saludo.
-
1.-Te recomiendo poner el script de RapidShare en una carpeta de tu PATH
2.-Guarda (sólo) los archivos a subir en un mismo directorio
3.-Utiliza el comando 'for' para iterar a través del directorio y ejecutar el comando para cada archivo, creando un script con lo siguiente (guárdalo también en el PATH y hazlo ejecutable):
#!/bin/bash
for i in $(ls -1)
do
rsapiresume.sh "$i" free [login] [password]
done
4.-Entonces, ya ambos scripts en el PATH, abres la consola, te cambias al directorio con los archivos a subir y ejecutas el nuevo script:
cd /directorio/con/archivos
script_creado
Espero te ayude...
Saludos
-
Gracias, Mr_X, por el script. Efectivamente, sirve para subir múltiples archivos... pero solamente a cuentas gratuitas. Con las premium me da el siguiente error:
File anyview3.2.23-full.jad has 751 bytes. Calculating MD5HEX...
MD5HEX is 603894b0cc00d8682d3f41c5425f8424 (751 bytes analyzed)
Trying to upload to your prem account.
Getting upload server infos.
Uploading to rs100l3.rapidshare.com
Upload chunk is 751 bytes starting at 0.
Sending 751 bytes.
Server response:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>RapidShare: Easy Filehosting</title>
<link rel="icon" href="/img2/favicon.ico" type="image/ico" />
<link rel="SHORTCUT ICON" href="/img2/favicon.ico" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="author" content="Saso Nikolov" />
<meta name="keywords" content="File Hosting, File Distributor, File Sharing" />
<meta name="description" content="Easy File Distrubition, Easy, Fast and Reliable" />
<link rel="stylesheet" type="text/css" href="/img2/styles.css" />
</head>
<body>
<center>
<div class="hauptmenue">
<table><tr><td>
<ul class="dropdown">
<li><a href="http://rapidshare.com/index.html">Home</a></li>
<li><a href="http://rapidshare.com/news.html">News</a></li>
<li><a href="http://rapidshare.com/rewards.html">Rewards</a></li>
<li><a href="https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi">Premium Zone</a>
<ul>
<li><a href="https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi">Premium Zone Login</a></li>
<li><a href="http://rapidshare.com/premium.html">Create Account</a></li>
<li><a href="http://rapidshare.com/verlaengern.html">Extend Account</a></li>
<li><a href="http://rapidshare.com/forgotpw.html">Forgot Password</a></li>
<li style="border:0px;"><a href="http://rapidshare.com/faq5.html">TrafficShare</a></li>
</ul>
</li>
<li><a href="http://rapidshare.com/freezone.html">Free Zone</a>
<ul>
<li><a href="https://ssl.rapidshare.com/cgi-bin/collectorszone.cgi">Collector's Zone Login</a></li>
<li><a href="http://rapidshare.com/folderadmin.html">LinkList Login</a></li>
<li style="border:0px;"><a href="http://rapidshare.com/freefolders.html">Create LinkList</a></li>
</ul>
</li>
<li><a href="http://www.rapidgames.com/" target="_blank">RapidGames</a></li>
<li><a href="http://rapidshare.com/rapidtools.html">RapidTools</a>
<ul>
<li><a href="http://rapidshare.com/rsm.html">RapidShare Manager</a></li>
<li><a href="http://rapidshare.com/rapiduploader.html">RapidUploader</a></li>
<li style="border:0px;"><a href="http://rapidshare.com/checkfiles.html">RapidShare Checker</a></li>
</ul>
</li>
<li><a href="http://rapidshare.com/supportseite.html">Support</a>
<ul>
<li><a href="http://rapidshare.com/faq.html">FAQ</a></li>
<li><a href="http://rapidshare.com/support.html">Support Contact</a></li>
<li><a href="http://rapidshare.com/abuse.html">Abuse Contact</a></li>
<li style="border:0px;"><a href="http://rapidshare.com/security.html">Security advice</a></li>
</ul>
</li>
<li style="border:0px;"><a href="http://rapidshare.com/rapidshare.html"><nobr>RapidShare AG</nobr></a>
<ul>
<li><a href="http://rapidshare.com/wiruberuns.html">About us</a></li>
<li><a href="http://rapidshare.com/testimonials.html">Testimonials</a></li>
<li><a href="http://rapidshare.com/banners.html">Banner</a></li>
<li><a href="http://rapidshare.com/agb.html">Conditions of use</a></li>
<li style="border:0px;"><a href="http://rapidshare.com/imprint.html">Imprint</a></li>
</ul>
</li>
</ul>
</td></tr></table>
</div>
<a href="http://rapidshare.com"><img src="/img2/rslogo.gif" width="300" height="214" alt="logo" /></a>
<noscript><h1>This page needs JavaScript, to display all information correct!</h1></noscript>
<div id="inhaltbox">
<h1>Error</h1>
<div class="klappbox">
<!-- E#1 -->Your Premium Account has not been found.
<a href="http://rapidshare.com/forgotpw.html">Password forgotten?</a>
</div>
<div class="untermenue">
<a href="http://rapidshare.com/wiruberuns.html">About us</a> | <a href="http://rapidshare.com/agb.html">Terms of use</a> | <a href="http://rapidshare.com/imprint.html">Imprint</a>
</div>
</div>
</center>
<p> </p>
<div style="position:fixed;left:0px;bottom:0px;height:15px;width:50%;background-color:#8E908F;"></div>
<div style="position:fixed;left:50%;bottom:0px;height:15px;width:50%;background-color:#002760;"></div>
</body>
</html>
Server result did not contain a file ID.
Pero bueno, revisando su script he descubierto cómo conseguir un listado con rutas relativas de los ficheros de un directorio:
$ ls -1
Lo cual me permite usar rápidamente el script del enlace que proporciona el sr. Liamngls.
-
Gracias, Mr_X, por el script. Efectivamente, sirve para subir múltiples archivos... pero solamente a cuentas gratuitas. Con las premium me da el siguiente error
Obviamente cambiaste el script para subir a cuentas premium ¿cierto?
#!/bin/bash
for i in $(ls -1)
do
rsapiresume.sh "$i" prem [login] [password]
done
Pero, bueno, de algo te sirvió.
Saludos
-
Sí, claro que lo cambié.
Pero bueno, como Vd. dice, me sirve para subir automáticamente archivos a cuentas gratuitas.
Muchas gracias por la ayuda. Un saludo.
-
Si quieres generar una lista con los contenidos de un directorio en un fichero puedes usar:
ls path_al_directorio > fichero_de_salida
Además, puedes mandar la tarea al fondo usando ctrl+Z y devolverla luego a la parte frontal con "fg"
-
Yo soy amigo de hacer las cosas en consola en una sola línea:
ls -l | awk {'print $9'} | xargs rsapiresume.sh $1 prem [login] [password]
Explico:
- El caracter | une una instruccion con otra, se llama "pipe" o tubo o como prefirais, envía el resultado de una instrucción a la siguiente
- awk {'print $9'} indica que se debe pasar a la siguiente salida la columna 9, es decir: el nombre del fichero, ignorando los demás datos, puede variar según la versión de bash
- xargs invoca al siguiente comando que se pide, armando la llamada con los parametros que llegan de la salida anterior, en este caso, con $1 es el primer resultado, o sea el nombre del fichero
Simplemente es hacer un stream e ir pasandolo de una llamada a la siguiente.
Salu2
-
Yo antes de utilizar Lightroom (en windows) utilizaba un script que me construí para renombrar archivos que cogía los datos de la foto y los ponía como nombre (la fecha más que nada)
metacam $dfile | grep 'Image Capture Date' | awk {'print $4'} | sed 's/[:]*'//g
Aunque creo que Dabo también tiene algo de experiencia en encadenamiento de instrucciones :-D :-D :-D :-D :-D
-
Es un vicio, uno empieza y ya no tiene límite.... :destroyer:
-
Creo que le sera muy util peibol y AJ, calla, calla que sabes las que lio con iptables :ciego: