Hola a todos los lectores
Después de unas fallidas vacaciones, me digno a escribir estas lineas. Resulta que se dañó mi reproductor de mp3 de 32gb y la única forma de recuperarlo es dándole formato, eso no es problema, lo que en realidad me mortificaba era pensar en el tiempo que mi iba a llevar el seleccionar y copiar la colección musical que con tanto gusto había confeccionado.
En eso recordé lo poderosa que puede ser la terminal para estos casos y después de unos minutos de leer documentación (no soy la mejor en bash ) llegué a este método:
1. Hice una lista con todos los archivos del reproductor:
dir /media/musicplayer > lista_de_musica
2. Luego de generar esa lista, aplicamos el siguiente comando:
cat lista_de_musica | while read f; do find . -name "$f" -exec cp {} /media/musicplayer \;; done
cat lee la lista, acto seguido, find se encarga de buscarlos y finalmente cp lo copia a la carpeta destino, en un ciclo hasta que la última linea del archivo es leída.
y listo!
Es conmovedora la manera en que trabaja la consola verdad?
Estoy segura que puede ser de utilidad en actividades más productivas (y menos triviales que mi reproductor jajaja), y por supuesto que habrían otras maneras de llegar al mismo objetivo (tal vez usando rsync o xargs) pero me pareció que ésta era la manera mas simple de lograrlo.
Oh! Genial 😀
Ehhh…. ¿»dir» ???? ¿Lei bien y usaron en comando «dir»? WTF!!! El comando es «ls»… DIR es un comando de D.O.S. y no de *nix (o GNU/Linux)… Se que soy un viejo Slacker pero, ¿no hay un error ahi?
Por lo demas, ¡excelente! una buena forma de ser perezoso, es usando la consola 😉
Estamos iguales n ese punto de DIR, ya que en POSIX se usa LS como su reemplazo.
Errar es de humanos.
`man dir`
Exacto. DIR también existe en nuestras distribuciones 😛
De hecho, cuando ejecuto:
man dir
Mira lo que me sale al final:
Mira tú! Pero eso es reciente, no? Porque yo hace unos años, cuando comencé a usar Linux escribía dir en lugar de ls por costumbre y me pintaba una!
Retiro lo ue omenté de DIR.
yo misma lo dije, soy una completa n00b en bash xDDD disculpe si os ofendi con dir jajaja, ya enserio, ya se que estaba ls, pero en ese momento solo me acorde de dir… era nada mas una lista de archivos 😛
No te preocupes. De igual forma, no soy tan recurrente al bash, así que estamos a mano.
Y por cierto, te sugiero que pruebes Iceweasel (está en AUR y el logo es más bonito que el de Firefox).
🙂
le dare una oportunidad ^^
Al final es lo mismo. ¿Para que instalar Iceweasel cuando ya tenemos Firefox en los repositorios?
Eliot, es lo mismo que Firefox pero con logo más feo ¬¬ y luego aparte está en el AUR
@cookie:
Depende de cómo lo veas, porque hasta ahora no me ha tocado ver una nueva versión del logo de Iceweasel con un diseño «plano» ni tampoco con una opción para enviar mis datos a Mozilla para ver si funciona bien o no.
Que el logo de Iceweasel no sea de tu agrado está bien, respeto tu decisión.
No te preocupes que a cambio de quebrarse la cabeza con bash uno ya no desea hacer las cosas en otros lenguajes ya que no halla para donde 😀 (mi caso particular), aparte que es bueno usarlo para desenvolverse en varias distros
En cuanto a tu script, me tomé la molestia de ordenarlo un poco y de ponerlo en un pastebin, aunque quisiera saber algunos parámetros para que sirven porque no los entiendo mucho (investigaré cuando esté en mi casa ya que en mi trabajo estoy atado de manos y pies)
Script -> http://pastebin.com/3c1zwS5y
efectivamente, lo has dejado mas ordenado, lo iba a hacer asi, pero…. por alguna razón recuerdo los arreglos (que tanto me hacen sufrir en la clase de programación) entonces mejor lo dejé en una sola linea jajaja
Pues es de ayuda ordenar los códigos porque sino cuesta entenderlos despues (como documentador/analista/programador es un gran dolor eso y te lo digo por experiencia propia)
Y alguna otra cosa con bash me ofrezco a ayudar con gusto, tampoco soy master en eso pero de los lenguajes que gusto usar (y que tengo mas desempolvados :P) ese es uno de ellos, aunque para alguien que, supuestamente, es novice en bash me has dejado pensando que hace el código en sí 😉 😛
prueba ejecutando dir
No hay error, tambien se puede usar el comando DIR en Linux podria ser mas elegante usar LS pero para sacar una lista de archivos DIR va bien pues actualmente la mayoria de distribuciones traen por defecto el alias dir=’ls -l de fabrica.
Me gustó el tip. Espero que se redacten más tutoriales acerca de los múltiples usos de la consola de GNU/Linux, que en verdad le supera a la de Windows.
Revisa por acá 😉 -» https://blog.desdelinux.net/tag/terminal/
Compartiendo y añadido a favoritos.
Disculpen mi ignorancia, pero la verdad que no entendi casi nada: el primer comando, el dir, hace una lista de los ficheros que estan dentro de una carpeta, luego, segun lo que entiendo, el find va buscando uno a uno esos ficheros descritos en esa lista y los copia hacia otra carpeta. Yo pregunto, para que hace falta buscarlos si ya se que estan en /media/musicplayer, y solo vasta con copiar esa carpeta a otro destino.
No sera que en /media/musicplayer hay todo tipo de archivos y yo quiero encontrar digamos solo los mp3 y copiarlos a otro lado?, y faltaria en el primer comando algun filtro para que me liste solo los mp3?.
Si alguien pudiera explicar mejor cual es el problema y que quiero hacer?
Gracias y disculpen.
bueno como dices, si que es mas facil solo copiar los ficheros a otro lado, el problema que tuve, es que los ficheros eran ilegibles, en linux, y en windows, asi que solo me quedaba formatearlo 😛 , y volver a llenarlo me daba pereza, por esa razon.
en cuanto a lo que dices sobre filtrado, creo que debes agregar el flag -o y -name al comando find, algo asi:
find . \( -name ‘*.jpg’ -o -name ‘*.png’ -o -name ‘*.JPG’ -o -name ‘*.PNG’ -o -name ‘*.JPEG’ -o -name ‘*.jpeg’ \)
en ese caso filtraria solo los archivos *.jpg, *.JPG, *.png, *.PNG, *.jpeg y *.JPEG
Enhorabuena. Has usado la terminal como de verdad está pensada para usarse.
Qué sería de nuestras vidas sin la poderosa consola :3 .. . .
muy bueno, yo tengo
alias escuchar=’echo «$(find $(pwd) -iname «*.MP3″ )» | xargs -n1 -I aa ln -s «aa» $HOME/escuchar/’
muy parecido el que yo uso, para mover los archivos que ha terminado el transmision
[code]find -iname «*.avi» |xargs -i mv {} /home/wizord/Vídeos/
[/code]
Disculpen la ignorancia, pero yo tampoco entendí del todo la orden y por ende no sé si aplique o no a lo que quiero hacer.
Tengo un iPod de 160 gb 6a generación, que desde cuando quiero hacer un respaldo antes de que sea demasiado tarde, sin embargo no sé si con lo que escribas pueda separar la música acorde a las listas de reproducción, ya que hay muchas canciones con el mismo nombre pero en diferentes discos o artistas ¿me explico? por eso no puedo solo copiar los .mp3 a una sola carpeta porque tendría conflictos con las canciones con el mismo nombre. ¿puedo hacer mi respaldo con los comandos que propones o existe alguna otra alternativa?
Ojalá me puedan ayudar, gracias!!
pd: pensé instalarle Rockbox, pero no es compatible con mi ipod según la página del desarrollador
pd2: gtkpod al parecer también copia únicamente los .mp3 sin orden, o tal vez no supe como hacerlo.
Esta genial 😀
Pues cada uno es libre de usar el navegador que uno quiera.
Yo ando usando Iceweasel en Debian con la rama release de mozilla.debian.net, y no estoy en contra de los que usen ese navegador.
Yo sólo le sugerí que probase Iceweasel a @helena porque Iceweasel se lo identifica por tener un logo bastante tierno (cosa que a muchos no les cae bien), pero no hay que alarmarse.
Igual, ando usando Iceweasel en Debian porque me da flojera de instalar Firefox y ya tengo Firefox en Slackware y me va de maravillas.
Claro. A lo que me refiero es que Firefox ya viene empaquetado en el repositorio. Iceweasel se tendría que instalar desde AUR con todos los riesgos que eso conlleva.
Ah, bueno. Eso sí, lo que recomendable sería reemplazar Firefox por Iceweasel, ya que he probado teniendo ambos navegadores, pero no se pueden ejecutar ambos a la vez.
Ni bien termine de experimentar con Slackware, haré una máquina virtual en la que instalaré Arch con Iceweasel y una interfaz ligera (XFCE o LXDE).
[off-topic]
jajaja no hay problema, yo se que al fin de cuentas, es firefox con otro logo, y es verdad, esta en aur, lo que puede ser algo riesgoso, el caso es que en la PC de mi hermana esta instalado crunchbang (y por ende iceweasel) y de verdad que el logo es muy kawaii ^^ no entiendo como es que a alguien no le puede gustar ~_~
[/off-topic]
Pues, a mí me simpatiza el logo de Iceweasel. A menos me alegra en los días en los cuales me han ido patas arriba.
Perdonen por el off-topic, pero comentar desde Opera Mini es realmente incómodo.
algo incómodo, pero mejoró con el cambio que hubo en los comentarios.
buen trabajo
El tip está más que interesante y útil, pero, ¿se podía hacer de forma tal que se ejecute cada vez que se ingresa un usb? 😮
Es que sería genial sincronizar ciertas carpetas de la USB con el sistema.
Saludos y excelente aporte.
jajaja, y eso que eres noob en bash.
Es una de las razobes del porque me enamore de la terminal, por la forma de hacer algunas cosas por ahí de manera muy rápida.
Y eso es cierto. Además, es mucho mejor que la consola de Windows.
Excelente tip. Me lo guardo.
Gracias ! … De gran Ayuda !
Alguien tiene un fichero bash que me copie de linux la siguiente dirección /var/log/apt/history.log a la direccion en windows D:/Copialog el fichero history.log
Alguien tiene un fichero bash que me copie de linux la siguiente dirección /var/log/apt/history.log a la direccion en windows D:/Copialog el fichero history.log por favor enviemelo a mi email rey79cm@gmail.com