Mostrando entradas con la etiqueta command line. Mostrar todas las entradas
Mostrando entradas con la etiqueta command line. Mostrar todas las entradas

sábado, 19 de marzo de 2016

Script descarga de mangas-imágenes en submanga,mcanime y otros... V3 RELEASE

Bueno, en estos días he estado alcanzando los mangas que ya tenia olvidados. El caso es que le he hecho unas cuantas mejoras que merecen indicar un cambio de versión.


  • Toma automática de extensión
  • Toma automática de offset (ej: url/fairytail-01.jpg, toma fairytail- como offset)
  • Fuera el trabajo con ficheros: Al final teniendo en cuenta que la ejecución se hace en memoria y que el wget lo puedo reponer con un simple -c, no es necesario tirar de ficheros de entrada y salida para guardar urls.

Con todo esto me ha quedado el siguiente código:

jueves, 8 de octubre de 2015

Resolver error WARNING: Your copy of avconv is outdated

Bueno,

El otro día estaba mirando unas cosas de unos videos y me dio el siguiente error

WARNING: Your copy of avconv is outdated, update avconv to version 10-0 or newer if you encounter any errors.

Para solucionarlo, no me quedaba mas remedio que forzar ffmpeg. Nunca lo habia hecho antes, pero la maravillosa herramienta youtube-dl tiene opciones para todo ;)

Queda en algo asi

youtube-dl -x --audio-format mp3 --prefer-ffmpeg URL

-x : Extraer audio
--audio-format : Autoexplicativo
--prefer-ffmpeg : Usa ffmpeg para la conversión en vez de AVCONV que en mi caso no tenia versión superior a la ya instalada.

domingo, 9 de agosto de 2015

Convertir una lista de arhivos a otro formato con ffmpeg

Saludos,

En estos días, me ha tocado transformar unos vídeos, y casualmente winff no tenia el formato que quería. Con lo cual he tenido que ingeniar un poco:

Instalamos el paquete

# apt-get update && apt-get install -y ffmpeg

Ahora entramos en el directorio donde tengamos todos los archivos de video y los listamos

$ ls -l *{AVI,3gp} | awk '{print $9}' > listado

Ahora en el listado que es un archivo normal ejecutaremos el ffmpeg

$ for i in $(cat listado); do ffmpeg -i $i $i.formato; done

Lo dejamos correr y fuera!

Espero les haya servido ;)


domingo, 15 de marzo de 2015

Calcular letra dni español con bash

Buenas, en estos días me he puesto a meter unos datos de un lado a otro y la verdad es que es un tanto...aburrido, por lo cual me propuse de la que estoy hacerme un script y así no tener que usar los miles-cientos de servicios web que te hacen esto, que ya ves tu para que voy a usar Internet en algo tan fácil.

Por si alguno no lo sabe, la letra del DNI no es mas que un checksum-CRC o parecido que consiste en aplicar el modulo 23 a una lista de elementos, que son los que indico en letras=""

Bueno, aquí el script:

#!/bin/bash
#@autor miniminiyo http://frikidetodounpoco.blogspot.com/
#toma por entrada estandar el dni sin letra
letras="T R W A G M Y F P D X B N J Z S Q V H L C K E"
n=$(($1%23))
#echo $n
arr=($letras)
echo ${1}-${arr[$n]}

Espero le sirva a alguien ;) y sino al menos para trabajar con arrays

viernes, 13 de marzo de 2015

Script descarga de mangas-imágenes en submanga,mcanime y otros... V1.4 RELEASE

Bueno, en estos días me puse a mejorar el script que tengo de descarga, porque la verdad es que quería automatizar del todo las acciones, pero todavía no lo consigo, así que de mientras le meto funcionalidad. Espero que les sirva, ya que supone una buena mejora con respecto a la anterior versión(el tema de los ceros me tenia puesto de quicio) y la toma de argumentos esta mas ordenada a mi parecer.

Aquí lo tienen:


sábado, 21 de febrero de 2015

How to convert pdf to epub with linux command line

Hola,

Estos días he tenido el problema de transformar unos pdfs a epub, debido a que un colega tiene un lector pero solamente de epub, con lo cual todos los apuntes de clase para el quedan a verse solo en un pc, y bueno, ya que estamos me puse a buscar y tras unos cuantos problemas he sacado una solución valida y otra que dejo sorprendido por su potencia(y mi desconocimiento de ella).

La primera es la 'normal' que se encuentra por la red con 'calibre' como herramienta:

$find  -iname "*.pdf" -type f -exec ebook-convert  {} {}_v2.epub \;

En este comando lo que hacemos es, buscamos todos los .pdf y los pasamos por exec al comando ebook-convert para que los transforme a .epub

La segunda pero no por ello menos interesante, es con 'liberoffice' ...SI,SI, con libreoffice por linea de comandos se pueden transformar pdfs a epub, sinceramente me parece que merece la pena nombrarlos a ambos, ya que libreoffice tenemos todos pero calibre puede que no:

$find  -iname "*.pdf" -type f -exec libreoffice  --convert-to epub {} \;

Lo que hace es convierte a epub 'todo lo que le pasemos' que en este caso son .pdf

*mas info: man libreoffice

Espero que les haya servido tanto como a mi

sábado, 13 de diciembre de 2014

How to install and use : RarCrack

Abrir ficheros .rar , .zip o 7zip con rarcrack sin tener contraseña!

Rarcrack es un programa bastante completo que podremos encontrar en los repos


$apt-get install rarcrack -y

Pero en mis pruebas resulta bastante ineficiente, por lo cual estará bien tener algo de rendimiento en su ejecución ;) como conseguimos ¿obtener todo el rendimiento que da nuestra maquina con este programa? Fácil! Compilarlo nosotros mismos, los pasos previos deberían ser:

#wget -c http://surfnet.dl.sourceforge.net/sourceforge/rarcrack/rarcrack-0.2.tar.bz2

#apt-get install gcc
*este es para tener algún compilador

Ahora descomprimimos el source

#tar -xjf rarcrack-0.2.tar.bz2
#cd rarcrack-0.2
#make
Debemos ser root para ejecutar este comando
#make install
Si queremos hacer alguna modificación sobre las optimizaciones del código podéis entrar en el 'makefile' y cambiarla a mano, las opciones base serían

-O3 -arch=amd|intel

Luego de eso tenemos el binario y podremos ejecutarlo tranquilamente, si queremos ponerlo en //bin para que podamos llamarlo desde cualquier sitio usamos

cp binarioSOURCE /bin

y ahora usamos el estilo de ejecución

rarcrack archivo.rar --threads 2 --type rar

--threads indica los hilos a usar a mas hilos mas rapido, pero mas consumo de cpu tiene, y si ponemos de mas podemos cargarnos el correcto funcionamiento del sistema. Por defecto toma 2

--type indica el tipo que queremos crackear, entre otros rar,zip...etc. Por defecto

NOTA IMPORATANTE: El programa es lento porque prueba TODAS las variaciones de letras que se indican en un fichero .xml que se creara con el nombre del '.rar' que vayamos a crackear, de manera que si sabemos mas o menos las letras o números o queremos ampliar el rango de búsqueda. podemos cambiar las mismas para reducirlas, ampliarlas y demás en el fichero.

Ete fichero se crea en el mismo sitio en que ejecutamos el programa para crackear el 'rar', por lo cual debería ser intuitivo el encontrarlo. Presenta una estructura asi:



  0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
  bTP
 

-abc: son las letras a usar como ya he dicho una vez realizada la primera ejecución podemos 'pararlo' y asi reducir o ampliar el abanico de opciones quitando o poniendo valores entre
-current: guarda la ultima combinación usada para luego seguir


La ventaja de este frente a otros es que es COMPLETO, al probar todas las opciones y mezclas, lo malo es el tiempo que nos puede llevar, pero si algún programa puede sacar todas las claves es este, aunque tarde su tiempo.

al acabar no pondrá algo del tipo:

Probing: '1022' [42 pwds/sec]
Probing: '1161' [46 pwds/sec]
GOOD: password cracked: '1234'

Con lo cual ya tendremos la contraseña ;)

*esto lo digo porque la mayoría de los demas se lo tragan sin mas y prueban patrones o diccionarios por defecto


jueves, 11 de diciembre de 2014

Script descarga de mangas-imágenes en submanga,mcanime y otros...

Bueno, hace tiempo lo hice y hoy creo que ya toca compartirlo, es un script hecho por mi(por lo cual quiero que quede claro, no será lo mejor del mundo, pero a mi me funciona) aprovechando que todas las paginas de imágenes tienen que tener ciertos patrones(sino imagínate que locura cambiar la ruta de al imagen para pasar a la siguiente imagen en vez de cambiar solamente la numeración).

De manera que aprovechando eso genere el siguiente .bash,su uso es tan simple como

bash script.bash urlEntera(hasta el .jpg,png...) dirAGuardar pagInicio pagFin extension offset

-urlEntera: para que coja toda al ruta con dirname
-dirAGuarda: lo que hace es crear el directorio y si existe no lo reescribe
-pagInicio: lo tipico..tenemos un 1.jpg o así pues ponemos el numero de inicio...0,1,...etc
-pagFin: como el anterior, lo normal es que acabe con una numeración
-extension: Los que veáis el bash vereis que por defecto si dais a ENTER cuando pregunte coge jpg, sino inicadlo

*podeis hacerlo ejecutable y tirar con ./script.bash y asi..pero eso ya queda a desición de cada uno

a continuación el código...(por supuesto para bash con linux)

Comprimir archivo con rar por consola

Bueno el otro día me encontré en al disyuntiva de hacer algo con rar para un colega y requeria clave, ademas nunca uso rar por consola asi que fue una buena oportunidad(suelo usar .tar.gz) para variar.

El comando es simple:

rar a salida.rar archivo -p

las opciones hacen lo siguiente

'a'- Creara el fichero con el nombre salida.rar o añadirá los archivos que digamos a uno ya existente
'-p' Hara que indiquemos contraseña para el archivo de manera que quede con la clave para abrirlo

Para descomprimirlo es tan facil como

unrar x archivo.rar

Y nos pedirá la contraseña tranquilamente.

domingo, 31 de agosto de 2014

Instalar Orange Data Mining en Linux/Debian/Ubuntu y derivados

Bueno, recientemente aburrido de usar el programa en windows me paso a instalar este maravilloso programa para una materia de la universidad. Para los que no lo sepan 'Orange' es una aplicación para visualizar y analizar datos fácilmente. Así que bueno manos a la obra!

Primero vamos a instalar las dependencias ( recordad que para todo esto hay que ser super user)

#apt-get update
#apt-get install python-numpy libqt4-opengl-dev libqt4-dev cmake qt4-qmake python-sip-dev python-qt4 python-qt4-dev python-qwt5-qt4 python-sip graphviz python-networkx python-imaging python-qt4-gl build-essential python-pip python-scipy python-pyparsing ipython python-matplotlib

Ahora descargamos el .zip con los ficheros fuente que necesitamos:

wget -c http://orange.biolab.si/download/orange-source-snapshot-hg-2014-08-31.zip

Y dentro de la misma carpeta que descomprimimos ( algo tipo... Orange-2.7.6) tiramos los siguientes comandos ¡como super usuarios claro esta!

#python setup.py build_pyqt_ext
#python setup.py build
#python setup.py install 

Ahora si queremos corremos el test de la aplicacion para ver si algo salio mal ( aun así debería de funcionar)

#pyton setup.py test

Tardara un rato, luego para usarlo simplemente usamos el comando

$orange-canvas

Y ya tenemos nuestro orange cargado ;)

Orange Data Mining executing


domingo, 20 de julio de 2014

Script: Recolección información(fotos,musica,docs...etc)

Bueno, en estos días un familiar me pidió que le sacara los datos de su portátil ya muerto(gráfica quemada) de manera que me puse este fin de semana y por no ir una a una, me monte el siguiente script que comparto ;)

La idea es simple, creamos el script y lo ponemos en donde vamos a copiar los archivos del disco origen, crea un directorio de destino y luego busca en la ruta que sigue a 'find' en este caso '/media'  los archivos por extensión, y los toma como entrara para el 'cp' que los copia en el destino.

#!/bin/bash
# comienza la creacion de direcctorios
mkdir Destino
#comienza a buscar y copiar archivos
find /media -iname "*.jpg" -a -size +250k -exec cp -vn '{}' Destino \; | tee jpg
find /media -iname "*.jpeg" -a -size +250k -exec cp -vn '{}' Destino \; | tee jpeg
find /media -iname "*.wma" -exec cp -vn '{}' Destino \; | tee wma
find /media -iname "*.mp3" -exec cp -vn '{}' Destino \; | tee mp3
#para mas tipos de ficheros simplemente ir añadiendo el tipo con la misma estructura que las #lineas anteriores
echo 'Fin de operacion'

#Omitimos errores por medio de -n , podeis usar otras variaciones como -nuv o algunos incluso -i


lunes, 18 de noviembre de 2013

Koding,la red social que todo programador deberia conocer

Bueno,hoy gracias a un amigo(la verdad da mucha calidad de vida de forma constante) he conocido la red social koding . Una red social asociada a programadores,en ella podremos conectar, y a parte de socializar, hacer cosas fascinantes,como por ejemplo:

Usar un servidor propio y privado(con DNS y dominio propio) para montar webs,en cualquier lenguaje de programación que conozcamos,nos dan un servidor virtualizado con 1GB de discoduro y 1G de ram(mas que muchos servidores privados free) con el cual podremos trastear para aprender,mostrar o simplemente cacharrear

A parte,la red esta bien organizada,puede instalar app,para poder extender funcionalidades dentro de tu VM(Virtual Machine) con lo cual podremos instalar cosas tan simples como "MySql" o mas avanzadas como "ProgresSQL" o "MongoDB" y así poder aprender mas,pero tenemos muchas mas opciones que esas,aquí muestro algunas

koding apps

Si quieren probar,la comunidad esta creciendo,y cada vez somos mas los que nos unimos para compartir códigos,preguntarnos cosas de programación y pasar un buen rato mientras trasteamos con esta red-herramienta

La única falla que le veo es que la maquina virtual que te dan se apaga a los 15 minutos de tu desconexion o perdida de actividad,lo cual nos recuerda que es una red social no un hosting(aun que creo que también trabajan sobre ese tema...) y estamos ahí para compartir el rato ;)

Sin mas si quieren unirse aquí esta mi referido :P y así me dan espacio ;)

https://koding.com/R/miniminiyo

lunes, 11 de noviembre de 2013

Instalar decompilador jd-gui en linux ubuntu

Bueno,el otro dia me dio por decompialr cosas(curiosidad) y entre la ayuda de un amigo y tal lo encontre(por mi parte lo encontre,pero no le puse enfasis XD)

Asi que facil,

Vamos aqui

http://jd.benow.ca/

Y descargamos el JD-GUI

Y en linux hacemos

$sudo apt-get install ia32-libs-gtk

y para hacerlo facil desde cualquier lado metemos el "jd-gui" en /usr/bin/

otra forma facil es simplemente darle permisos de ejecución,pero no sera accesible desde cualquier lado,solo en el directorio del ejecutable

chmod +x jd-gui

y luego tirar con

./jd-gui

Y ya se iniciara y abriras el archivo dede su menu ;)



*sida  el error:es porque teneis que instalar ia32-libs-gtk

jd-gui: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory

Solo hacemos

$ apt-get install ia32-libs-gtk

Otra manera es hacer

$sudo apt-get install libgtk2.0-0:i386 libxxf86vm1:i386 libsm6:i386 lib32stdc++6

sábado, 21 de septiembre de 2013

Instalar driver ati en ubuntu 12.04 y superiores

Bueno,el otro dia me di cuenta que me faltaban los drivers de la grafica,me gustan los privados noto que mi pc va mas fluido en ciertas cosas,asi que me dispuse a instalar los drivers privativos de mi grafica ati

Primero fui a la pagina oficial de ati

Me descarge los drivers de mi modelo,que suelen venir en un .zip

$ unzip *amd*.zip

Y luego para ejecutarlo

$ ./amd-driver-installer-catalyst-13-4-x86.x86_64.run

o

$ sh amd-driver-installer-catalyst-13-4-x86.x86_64.run

*Sino le dais permisos con $chmod +x *.run

Ahora me pide que mate los graficos y sea root,en mi caso uso xfce y se mueve con lighdm y como

$ sudo service lightdm stop

No me iba tire por lo de toda la vida

$ ./etc/init.d/lightdm stop

las mate y con las teclas alt+ctrl+f1 me fui a la primera tty(consola del sistema) y rapidamente logee y me hice super usuario

$sudo su

$sh amd-driver-installer-catalyst-13-4-x86.x86_64.run

El resto de la instalacion es normal,ahora solo quedaba reiniciar al acabar y entrar en el panel de control

*Ojo yo instale el driver a pelo,no hice un .deb

Luego para entrar tenia problemas asi que mire por gugu y encontre como acceder al panel de control de forma root

$ gksudo amdcccle
Fue la que me sirvio,pero hay otras alternativas como tirar

$sudo su

Y luego el

$amdcccle

Cuestion de gustos,espero que les sirva para poder instalar y gestionar su ATI desde ubuntu,xubuntu o la version que uses ;)

 

lunes, 16 de septiembre de 2013

Script:Descarga imagenes 2.0

Bueno,recientemente estoy reenganchando un manga que recomiendo bastante,es un manga sencillo pero bueno,se trata de negima  un manga que empece a ver hace mucho tiempo y ahora entre unas cosas y otras me he decidido a retomar,el caso es que no me apetece ver las cosas online,me aburre tener que dar clicks(soy proTeclado) asi que me hice un pequeño script anteriormente que pueden ver en este link pero decidi mirarlo un poco mas y hacerle mejoras,el resultado a continuacion

jueves, 8 de agosto de 2013

Script: Descargar imagenes de submanga y otras web

Bueno en un tiempo que he tenido suelto,me ha dado por hacerme un script para descargarme un manga de submanga,y es que la verdad estar todo el rato haciendo wget url/numero.jpg y cambiando me cansaba,asi que opte por programarmelo(ya sabeis si vais ha hacer algo mas de 2 veces...un script es la solucion ;) ,ademas es facil porque son numericos ) asi que me puse manos a la obra ,y tras varios quebraderos de cabeza por concatenacion y demas falta de formacion mas profunda en bash por mi parte debo admitir,me salio el siguiente codigo(Que si quieren pueden mejorar compartir y demas siempre poniendo el origen,por favor seamos respetuosos y no simples lammer ;) ):

*Recordar que tenemos que estar en al direccion de la imagen,es decir,en submanga vamos y abrimos boton derecho->copiar la ruta de la imagen y esa es la url que le pasamos

#!/bin/bash
#@autor miniminiyo
#script para bajar imagenes

echo "introduzca url(sin / final)"
read url     #recibimos dato
sleep 1
echo "La url es"
echo "${url}"

echo "indique el nombre que quiere dar a la carpeta donde se guardaran los datos"
read nombre
mkdir $nombre
cd $nombre

echo "introduzca el inicio"
read ini

echo "introduzca el fin"
read fin
echo "se acabara en ${url}/${fin}.jpg"
echo

#creamos el fichero
touch urls.txt

for i in $(seq $ini 1 $fin)
do
echo "${url}/${i}.jpg" >> urls.txt
echo
done
echo "fin operacion salida a texto"
#ahora descargamos
wget -c -i urls.txt
echo "fin de descarga de archivos"

 

Espero les sea de ayuda ya que a mi me lo supone para no tener que estar dando clicks  y mil atajos de teclado para ir copiando,simplemente pasarle la url el inicio y el fin y nos descargara,el formato como ven lo he puesto a pelo,pero se podria poner como una variable y concatenarla,pero yo lo deje asi porque por ahora es lo que necesito,pero a veces incluso deberemos de quitarlo asi que yo creo, queda en funcion de cada uno, es un codigo basico para ir tirando,las mejoras,segun interesen ;)

jueves, 30 de mayo de 2013

Instalar debian completo en USB/SD/microSD/HDD externo

Bueno,en estos dias ando con ganas de darle caña al debian nuevo,pero mi sistema esta demasiado estable y configurado como para hacer ese cambio tan brusco de "contexto" visto lo visto me pongo a buscar en internet y la mayoria de las paginas son solo preguntas,¿como instalar debian en USB/stick/sd/microSD/hdd externo...etc...permanentemente?,preguntas  como la mia esperando una respuesta,que no llegaba.

Asi que me puse a toquetear las opciones en el instalador de debian y la cosa es tan facil como instalar debian sobre el dispositivo como queramos(ya sea particionado,o todo de una o como querais) y cuando nos de la opcion de instalar el grub darle a "no",luego nos saldra una tabla en al que se nos veran las particiones que tenemos montadas

/sda1

/sdaX

/sdcX

el caso es que durante el tiempo de particion cuando hacemos la particion en la unidad externa nos fijamos en que letra tiene la unidad en la que estamos instalando nuestro debian, "sdc" es mi caso,asi que cuando me salio esta pantalla para que eligiera donde instalar el grub indique esa ruta "/dev/sdc5" y le di a continuar

Pero al reiniciar mi gozo iba en un pozo,y no me reconocio el boteo a la primera(tambien decir que el "adaptador" que uso apra microSD-USB no es nada convencional y mi BIOS por desgracia no me permitia arrancar desde la SD del propio portatil),de manera que dije,y si monto las particiones que he creado con el dispositivo conectado y hago un simple

$sudo update-grub

Espere,y la solucion llego al fin,al ahcer el update grub detecto el debian en la unidad externa,ahora puedo probar debian desde mi microSD-USB de forma persistente con la comodidad de no perder todo el trabajo,solo reiniciando y seleccionando el debian(con el dispositivo conectado no os olvideis...), y sin perder la configuracion hecha en mi voyager configurado del cual ya he hablado en algun momento y que el dia de mi migracion definitiva a debian compartire con ustedes para que puedan disfrutar de esta distribucion que es una maravilla en sencillez y estilo

martes, 28 de mayo de 2013

Solucionar error,no conecta mysql

Hoy me paso algo muy raro,mysql dejo de funcionar,no iniciaba ni nada y estuve buscando soluciones,primero upgradeo a ver que sale...y obtengo esto
Se encontraron errores al procesar:
mysql-server-5.5
mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

 

Ahora tiro;
dpkg-reconfigure mysql-server

Y obtengo esto...
/usr/sbin/dpkg-reconfigure: mysql-server está roto o no está totalmente instalado

Foreo un poco y me encuentro en esDebian a nuestro gran amigo "onubatux"(si,porque gracias a su ayuda podemos solucionar el problema entre manos)

La solucion,que hacemos?

$aptitude remove splashy

Y sale el mensaje de felicidad ;
Configurando mysql-server-5.5 (5.5.31+dfsg-1) ...[ ok ] Stopping MySQL database server: mysqld.[ ok ] Starting MySQL database server: mysqld ..[info] Checking for tables which need an upgrade, are corrupt or were not closed cleanly..Configurando mysql-server (5.5.31+dfsg-1) ...

Espero que les sirva a todos y muchas gracias a la comunidad de esDebian que siempre estan ahi ayudando en este mundo tan independiente y autodidacta en muchos sentidos de prueba-error

domingo, 26 de mayo de 2013

Hora en debian por NTP

El NTP(Network Time Protocol) es muy util cuando queremos tener sincronizadas varias maquinas y no poseen este protocolo como predefinido(se vuelve una locura),a continuacion indico como activarlo de forma facil en debian;

Primero instalamos el programa,que seguramente no este instalado:
apt-get install ntp ntpdate

 

Ahora actualizamos en base a un servidor cercano,en nuestro caso este:
ntpdate -s chico.rediris.es

 

Con esto conseguimos tener los relojes sincronizados,cosa util cuando tenemos varios servicios corriendo y algunos de ellos necesitas horas y tiempos con diferencias minimas para sincronizarse y funcionar al 100% ;)