| View previous topic :: View next topic |
| Author |
Message |
k4in Tux's lil' helper


Joined: 26 Jan 2008 Posts: 89
|
Posted: Tue May 13, 2008 6:00 am Post subject: Me ayudan a hacer un script?? |
|
|
Bueno aqui les tengo un problema practico y es que tengo mi servidor con una maquina viejita, ya tengo mldonkey para e2k gnutella y otras chucherias y torrentflux para mis torrents, pero me faltan las descargas directas, asi que me gustaria hacer un script sencillo para que use wget y una vez que termine una descarga siga con el siguiente link y asi hasta que acabe, pero no tengo mucha idea sobre programacion shell-script, que dicen?
cualquier ayuda es apreciada  |
|
| Back to top |
|
 |
diegoto Guru

Joined: 10 Jun 2006 Posts: 303
|
|
| Back to top |
|
 |
xSober n00b

Joined: 17 Jan 2008 Posts: 34
|
|
| Back to top |
|
 |
Stolz Moderator


Joined: 19 Oct 2003 Posts: 2900 Location: Valencia, Spain
|
Posted: Wed May 14, 2008 12:45 am Post subject: |
|
|
o más sencillo: wget -i archivo
k4in, sería interesante que menciones de donde salen los enlaces, donde se guardan (si es que se guardan), etc... Si saber eso es difícil ayudar |
|
| Back to top |
|
 |
k4in Tux's lil' helper


Joined: 26 Jan 2008 Posts: 89
|
Posted: Wed May 14, 2008 1:49 am Post subject: |
|
|
mm no sabia lo del punto y coma, no me serviria porque son muchos enlaces los que pongo, pero gracias de todas formas me servira para otras cosas
exactamente en algo asi pensaba pero
| Stolz wrote: | | o más sencillo: wget -i archivo |
no sabia de esa opcion y segun yo revise el manual, hasta ahora que dices me doy cuenta
concretamente lo voy a usar para megaupload y aprovecharme de su happyhour no es para nada de otro mundo |
|
| Back to top |
|
 |
inconexo Tux's lil' helper


Joined: 25 Aug 2005 Posts: 144
|
Posted: Wed May 14, 2008 8:54 am Post subject: Truco numero 1 |
|
|
Hola!
hablando de scripts, aprovecho para comentar algo que tal vez os sea util, hasta a los mas sabios del bash :)
Tradicionalmente, los espacios en blanco son un problema para generar scripts, tanto en entrada de consola, nombres de ficheros
| Code: | admin@zorrilla ~/out $ ls -ltr
total 0
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 2 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 1 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 4 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 3 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 7 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 6 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 5 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 9 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 8 xxx
-rw-r--r-- 1 admin users 0 May 14 10:42 xxx 10 xxx |
si recorremos este script de forma tradicional...
| Code: | admin@zorrilla ~/out $ for i in $(ls); do file "${i}"; done
xxx: cannot open `xxx' (No such file or directory)
1: cannot open `1' (No such file or directory)
xxx: cannot open `xxx' (No such file or directory)
xxx: cannot open `xxx' (No such file or directory)
[...] |
la forma correcta de hacerlo es...
| Code: | admin@zorrilla ~/out $ ls|while read i; do file "${i}"; done
.: directory
./xxx 1 xxx: empty
./xxx 2 xxx: empty
./xxx 3 xxx: empty
./xxx 4 xxx: empty
./xxx 5 xxx: empty
./xxx 6 xxx: empty
./xxx 7 xxx: empty
./xxx 8 xxx: empty
./xxx 9 xxx: empty
./xxx 10 xxx: empty |
Ademas de un ls, se puede aplicar por supuesto a la salida de un cat, un sed, un find... con espacios
Un saludo! |
|
| Back to top |
|
 |
inconexo Tux's lil' helper


Joined: 25 Aug 2005 Posts: 144
|
Posted: Wed May 14, 2008 9:18 am Post subject: Truco numero 2 |
|
|
Ah!
otra cosa que se me ocurre... sabeis que los nombres de fichero que empieza por un guion alto son de dificil acceso...
| Code: | admin@zorrilla ~/out $ ls -ltr
total 0
-rw-r--r-- 1 admin users 0 May 14 10:54 - hola mundo
admin@zorrilla ~/out $ ls
- hola mundo |
pues bien... comandos que fallan habitualmente...
| Code: | admin@zorrilla ~/out $ cat "- hola mundo"
cat: invalid option --
Try `cat --help' for more information.
admin@zorrilla ~/out $ touch "- hola mundo"
touch: invalid option --
Try `touch --help' for more information.
admin@zorrilla ~/out $ rm "- hola mundo"
rm: invalid option --
Try `rm ./'- hola mundo'' to remove the file `- hola mundo'.
Try `rm --help' for more information. |
bien, la forma de "escapar" este guion es para casi todos los comandos, usando un doble guion alto despues del comando...
| Code: | cat -- "- hola mundo"
touch -- "- hola mundo"
rm -- "- hola mundo"
file -- "- hola mundo"
mv -- "- hola mundo" xxx |
Por cierto, esto lo encontre en un libro que satirizaba la "facilidad" de Unix... escrito, entre otros, por Kernighan & Ritchie (siento no recordar el titulo, lo siento)
Un saludo! |
|
| Back to top |
|
 |
ackward Apprentice


Joined: 06 Sep 2002 Posts: 192
|
Posted: Wed May 14, 2008 11:20 am Post subject: |
|
|
yo siempre tiro de barra de escape, el siguiente caracter se toma literalmente
ej en bash:
| Code: | | ls \-[tab para autocompletar] |
|
|
| Back to top |
|
 |
inconexo Tux's lil' helper


Joined: 25 Aug 2005 Posts: 144
|
Posted: Wed May 14, 2008 11:43 am Post subject: |
|
|
| ackward wrote: | yo siempre tiro de barra de escape, el siguiente caracter se toma literalmente
ej en bash:
| Code: | | ls \-[tab para autocompletar] |
|
Me temo que para el caso de los ficheros cuyo nombre empieza con "-", da igual escaparlo con slashes que con comillas dobles :)
Has intentado crear un directorio que empieze por guion alto?
Has visto lo que dice "ls - [tabulacion]"?
No es habitual... pero te puedes encontrar con este caso si usas samba y tienes 200 usuarios haciendo de las suyas :)
Saludos! |
|
| Back to top |
|
 |
i92guboj Moderator


Joined: 30 Nov 2004 Posts: 9106 Location: Córdoba (Spain)
|
Posted: Wed May 14, 2008 12:49 pm Post subject: |
|
|
| inconexo wrote: | | ackward wrote: | yo siempre tiro de barra de escape, el siguiente caracter se toma literalmente
ej en bash:
| Code: | | ls \-[tab para autocompletar] |
|
Me temo que para el caso de los ficheros cuyo nombre empieza con "-", da igual escaparlo con slashes que con comillas dobles
Has intentado crear un directorio que empieze por guion alto?
Has visto lo que dice "ls - [tabulacion]"?
No es habitual... pero te puedes encontrar con este caso si usas samba y tienes 200 usuarios haciendo de las suyas
Saludos! |
Para estos casos muchos comandos ofrecen el terminador --
Por ejemplo
| Code: |
$ ls -- -
ls: no se puede acceder a -: No existe el fichero o el directorio
|
-- significa que ya no se van a añadir más opciones, así que todo lo demás que aparezca van a ser nombre de archivo. Muchos comandos aceptan dicho terminador. _________________ Gentoo Handbook |
|
| Back to top |
|
 |
|