Una buena alternativa a youtube-dl es yt-dlp
Se puede bajar el código fuente o paquetes ya precompilados desde:
https://github.com/yt-dlp/yt-dlp
viernes, 10 de mayo de 2024
lunes, 5 de febrero de 2024
Comprobar si los nombres de archivo en un directorio existen en otro directorio
Con la siguiente orden comprobamos si los nombres de archivo en el directorio actual existen en otro directorio (/tmp en ese ejemplo):
find . -type f -exec basename {} \; | xargs -I {} find /tmp -type f -name {}
find . -type f -exec basename {} \; | xargs -I {} find /tmp -type f -name {}
lunes, 22 de enero de 2024
Buscar una palabra por todos los ficheros en una carpeta (recursivamente)
En bash tenemos varias opciones para buscar recursivamente una palabra por todos los ficheros de una carpeta. Por ejemplo podemos componer un comando con find y grep:
find . -name "*.txt" | xargs grep -i "escondida"
También podemos usar el comando grep directamente, usando la opción -r
grep -ri "escondida" *
Si sólo necesitamos los nombres de los archivos, podemos usar la opción -l de grep. Veamos otro comando que usa find para buscar los archivos de texto y grep para buscar la palabra:
find . -name "*.txt" -exec grep -li 'escondida' {} \;
find . -name "*.txt" | xargs grep -i "escondida"
También podemos usar el comando grep directamente, usando la opción -r
grep -ri "escondida" *
Si sólo necesitamos los nombres de los archivos, podemos usar la opción -l de grep. Veamos otro comando que usa find para buscar los archivos de texto y grep para buscar la palabra:
find . -name "*.txt" -exec grep -li 'escondida' {} \;
lunes, 14 de diciembre de 2020
Lanzar Jupyter notebook
En el terminal entramos en la carpeta donde está el archivo .ipynb que vamos a usar, y lanzamos:
Nos abrirá directamente el navegador, donde ya pulsamos en el archivo .ipynb
Abrirá una nueva pestaña donde ya sólo tenemos que ir haciendo click en "Run"
para ir avanzando entre los bloques de código.
Nos abrirá directamente el navegador, donde ya pulsamos en el archivo .ipynb
Abrirá una nueva pestaña donde ya sólo tenemos que ir haciendo click en "Run"
para ir avanzando entre los bloques de código.
lunes, 9 de noviembre de 2020
Imprimir desde la línea de comandos (Linux)
Para imprimir a dos caras, según el lado largo de la hoja:
lp -d IMPRESORA -o sides=two-sided-long-edge FICH.PDFy poniendo 2 páginas del archivo por cada hoja:
lp -d IMPRESORA -o sides=two-sided-long-edge -o number-up=2 FICH.PDFPara imprimir a dos caras, según el lado corto de la hoja:
lp -d IMPRESORA -o sides=two-sided-short-edge FICH.PDFPara comprobar qué trabajos hay en la cola de impresión de cierta impresora:
lpq -P IMPRESORAY si queremos imprimir sólo un rango de páginas del archivo:
lp -d IMPRESORA -o page-ranges=1-5 FICH.PDFFinalmente, para establecer una opción por defecto usaremos lpoptions con las opciones deseadas:
lpoptions -o sides=two-sided-long-edge
domingo, 6 de septiembre de 2020
Tipos de entradas en Bibtex (LaTeX)
En total existen 14 tipos de entradas Bibtex, aunque las más utilizadas son: article, book, inproceedings, techreport, misc.
A continuación mostramos a modo de ejemplo la estructura y principales campos de cada una de ellas:
@article{xxxxx2000,
author = {xxxxx and yyyyy},
title = {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx},
journal = {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx},
volume = {xxxxxxxxxx},
pages = {xxxxxxxxxx},
doi = {xxxxxxxxxxxxxxxxxxxxx},
year = {2000}
}
@book{yyyyyy2016,
author= {xxxxx and yyyyy},
title = {yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy},
isbn={xxx-xx-xxxxx-xx-x},
url={httpshttpshttps},
year={2016},
publisher={Editorial YYYYYYYY}
}
@inproceedings{xxxxx2010,
author = {xxxxx and yyyyy},
title = {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx},
editor = {xxxxxxxxxx},
booktitle = {Proceedings of the International Conference on XXXXXX, {ACRONYM} 2010,
City, Country, February 12-15, 2010},
pages = {45--49},
publisher = {{EDITORIAL}},
year = {2010},
doi = {10.xxxx/xxxxxxxxxx}
}
@techreport{yyyyyy2020,
author= {xxxxx and yyyyy},
title = {yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy},
institution = "University of YYYYYYYYY",
type = "PhD Thesis",
series = "PhD Thesis Series",
number = "yyyyy",
year = "2020",
month = "April",
doi = {10.yyyy/yyyyyy},
URL = "httpshttpshttps",
}
@misc{yyyyyy2015,
author= {xxxxx and yyyyy},
title = {yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy},
note = {\url{httpshttpshttps},
Last accessed on 2020-05-24},
year = {2015}
}
Esos ejemplos son simplificaciones que en la mayoría de los casos serán suficiente. Sin embargo, habrá ocasiones en que sean necesarios otros tipos de entrada u otros campos. En esos casos se recomienda visitar la siguiente URL para una descripción completa y más detallada de cada tipo:
A continuación mostramos a modo de ejemplo la estructura y principales campos de cada una de ellas:
@article{xxxxx2000,
author = {xxxxx and yyyyy},
title = {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx},
journal = {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx},
volume = {xxxxxxxxxx},
pages = {xxxxxxxxxx},
doi = {xxxxxxxxxxxxxxxxxxxxx},
year = {2000}
}
@book{yyyyyy2016,
author= {xxxxx and yyyyy},
title = {yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy},
isbn={xxx-xx-xxxxx-xx-x},
url={httpshttpshttps},
year={2016},
publisher={Editorial YYYYYYYY}
}
@inproceedings{xxxxx2010,
author = {xxxxx and yyyyy},
title = {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx},
editor = {xxxxxxxxxx},
booktitle = {Proceedings of the International Conference on XXXXXX, {ACRONYM} 2010,
City, Country, February 12-15, 2010},
pages = {45--49},
publisher = {{EDITORIAL}},
year = {2010},
doi = {10.xxxx/xxxxxxxxxx}
}
@techreport{yyyyyy2020,
author= {xxxxx and yyyyy},
title = {yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy},
institution = "University of YYYYYYYYY",
type = "PhD Thesis",
series = "PhD Thesis Series",
number = "yyyyy",
year = "2020",
month = "April",
doi = {10.yyyy/yyyyyy},
URL = "httpshttpshttps",
}
@misc{yyyyyy2015,
author= {xxxxx and yyyyy},
title = {yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy},
note = {\url{httpshttpshttps},
Last accessed on 2020-05-24},
year = {2015}
}
Esos ejemplos son simplificaciones que en la mayoría de los casos serán suficiente. Sin embargo, habrá ocasiones en que sean necesarios otros tipos de entrada u otros campos. En esos casos se recomienda visitar la siguiente URL para una descripción completa y más detallada de cada tipo:
Por último, debemos tener siempre en cuenta que en sitios como https://scholar.google.com/ siempre podremos descargar directamente las referencias completas, en diferentes formatos (BibTeX, EndNote, RefMan, RefWorks).
Para ello pinchamos en el icono correspondiente a una referencia:
Y en la ventana que se abrirá, pinchamos sobre el formato deseado
viernes, 27 de marzo de 2020
Firmar digitalmente un PDF con Acrobat Reader
Para firmar un PDF debemos acceder en el menú de la derecha a la opción "Más herramientas":
En la pantalla que se nos mostrará, seleccionar "Certificados":
Y de vuelta a la vista del PDF, seleccionar en la parte de arriba de la ventana la opción "Firmar digitalmente":
El procedimiento nos pedirá primero que seleccionemos nuestro certificado digital, y a continuación deberemos arrastrar con el ratón para marcar el área rectangular donde se insertará la firma digital. En esos cuadros de diálogo podremos marcar la opción de bloquear el PDF.
En la pantalla que se nos mostrará, seleccionar "Certificados":
Y de vuelta a la vista del PDF, seleccionar en la parte de arriba de la ventana la opción "Firmar digitalmente":
El procedimiento nos pedirá primero que seleccionemos nuestro certificado digital, y a continuación deberemos arrastrar con el ratón para marcar el área rectangular donde se insertará la firma digital. En esos cuadros de diálogo podremos marcar la opción de bloquear el PDF.
sábado, 8 de febrero de 2020
Instalar youtube-dl y descargar una play-list de YouTube a archivos MP3 (Linux)
Primero conviene eliminar cualquier copia antigua del programa que tenegamos instalada:
sudo apt-get remove -y youtube-dl
Ahora instalamos la versión más actual disponible:
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
hash -r
Y a partir de ese momento, podremos usar el programa para descargar vídeos (y extraer el sonido). Incluso podremos actualizarlo con:
sudo youtube-dl -U
Ahora, si queremos descargar una lista de canciones (play list) de YouTube directamente a archivos MP3, haremos:
youtube-dl --ignore-errors --format bestaudio --extract-audio --audio-format mp3 --audio-quality 160K --output "%(title)s.%(ext)s" --yes-playlist 'https://www.youtube.com/playlist?list=xyzXYZxyzXYZxyzXYZxyzXYZxyzXYZxyz'
Y para descargar un vídeo, haremos:
youtube-dl https://www.youtube.com/watch?v=xyzXYZxyzXYZ
sudo apt-get remove -y youtube-dl
Ahora instalamos la versión más actual disponible:
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
hash -r
Y a partir de ese momento, podremos usar el programa para descargar vídeos (y extraer el sonido). Incluso podremos actualizarlo con:
sudo youtube-dl -U
Ahora, si queremos descargar una lista de canciones (play list) de YouTube directamente a archivos MP3, haremos:
youtube-dl --ignore-errors --format bestaudio --extract-audio --audio-format mp3 --audio-quality 160K --output "%(title)s.%(ext)s" --yes-playlist 'https://www.youtube.com/playlist?list=xyzXYZxyzXYZxyzXYZxyzXYZxyzXYZxyz'
Y para descargar un vídeo, haremos:
youtube-dl https://www.youtube.com/watch?v=xyzXYZxyzXYZ
miércoles, 4 de diciembre de 2019
Crear disco de instalación de macOS Mojave
Debemos descargar la imagen del sistema de:
Una vez termine de formatear la memoria USB, vamos a la aplicación Terminal y ejecutamos:
sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/UNTITLED --nointeraction
https://apps.apple.com/us/app/macos-mojave/id1398502828?mt=12A continuación, usando la utilidad de discos ("Disk Utility") debemos formatear la memoria USB. Ir a la pestaña "Borrar" y pinchar en "Formatear". En la ventana contextual, desplegar y seleccionar "Mac OS Extended (Journaled)".
Una vez termine de formatear la memoria USB, vamos a la aplicación Terminal y ejecutamos:
sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/UNTITLED --nointeraction
martes, 15 de octubre de 2019
Fijar paneles en Excel y activar las herramientas de filtrado por columnas
Cuando tenemos una hoja de cálculo muy grande (con muchas filas) conviene fijar la primera fila para poder desplazar las filas y mantener la que hace de cabecera. Para ello, nos situamos en la celda A2, vamos al menú "Ventana" y seleccionamos la opción "Movilizar paneles":
Si además queremos hacer uso de las opciones de ordenación y filtros asociadas a cada columna, nos situaremos en una celda de la fila 1 (de cabecera) y pulsamos el siguiente botón de la barra de herramientas:
Si además queremos hacer uso de las opciones de ordenación y filtros asociadas a cada columna, nos situaremos en una celda de la fila 1 (de cabecera) y pulsamos el siguiente botón de la barra de herramientas:
martes, 24 de septiembre de 2019
Liberar espacio ocupado por los documentos, imágenes y vídeos de Telegram (macOS)
Si usamos mucho la aplicación de Telegram es posible que acabemos ocupando mucho espacio del disco con documentos, imágenes y vídeos (que en su mayoría no nos interesan). Para liberar ese espacio podemos ir a cada chat para vaciarlo, o bien entrar a la carpeta donde Telegram lo almacena todo y hacer un borrado completo.
Si elegimos esta segunda opción (¡ojo! se perderá todo), debemos abrir la aplicación Terminal y buscar la carpeta:
/Users/pedro/Library/Group Containers/XXXXX.ru.keepcoder.Telegram/account-00000000000/postbox/media
Los pasos específicos a seguir son:
Si elegimos esta segunda opción (¡ojo! se perderá todo), debemos abrir la aplicación Terminal y buscar la carpeta:
/Users/pedro/Library/Group Containers/XXXXX.ru.keepcoder.Telegram/account-00000000000/postbox/media
Los pasos específicos a seguir son:
- Cerrar Telegram
- En el Terminal, entrar en la carpeta (p.ej. utilizando el comando cd)
- Borrar el contenido de la carpeta media para liberar el espacio ocupado (p.ej. utilizando el comando rm)
jueves, 5 de septiembre de 2019
Configurar vncserver en Ubuntu 19.04
Primero debemos instalar una serie de paquetes del servidor VNC. Después debemos configurarlo, y finalmente establecer el tipo de escritorio a usar.
A continuación se muestra la lista de órdenes utilizadas:
https://www.realvnc.com/es/connect/download/viewer/
Por supuesto, es importante asegurarse de que el cortafuegos del sistema permita la conexión por el puerto 5902 (o el que corresponda con la configuración).
A continuación se muestra la lista de órdenes utilizadas:
# instalar paquetes necesariosEl contenido del archivo /home/usuario/.vnc/xstartup es importante, ya que es el que establece qué tipo de escritorio vas a usar al conectarte remótamente. En este caso se configura para usar GNOME:
sudo apt -y install vnc4server
sudo apt install xfce4 xfce4-goodies
# eliminar configuraciones antiguas
cd
rm -rf .vnc
# configurar una clave de acceso
vncpasswd
# comprobar puertos abiertos
vncserver :1
sudo ss -ltn
vncserver :2
tigervncserver -xstartup /usr/bin/xterm
sudo ss -ltn
# matar el servicio (suponemos que está en :2)
vncserver -kill :2
# lanzar el servicio en :2 (usará el puerto 5902)
vncserver :2
# ahora se puede comprobar la conexión
# desde otra máquina con el software cliente
# matamos el servicio para terminar la configuración
vncserver -kill :2
# finalizamos configurándolo para usar GNOME
nano .vnc/xstartup
vncserver :2
#!/bin/shFinalmente, sólo hay que usar un cliente VNC para acceder al servidor. Por ejemplo, VNC Viewer tiene versiones para casi cualquier sistema operativo (de escritorio o móvil):
MODE="GNOME"
unset DBUS_SESSION_BUS_ADDRESS
if [ -e "$HOME/.Xresources" ]
then
xrdb "$HOME/.Xresources"
fi
if [ "GNOME" = "$MODE" ]
then
if which gnome-session > /dev/null
then
gnome-session --session=ubuntu &
else
MODE=""
fi
fi
https://www.realvnc.com/es/connect/download/viewer/
Por supuesto, es importante asegurarse de que el cortafuegos del sistema permita la conexión por el puerto 5902 (o el que corresponda con la configuración).
miércoles, 24 de julio de 2019
Cómo descargar vídeos publicados en Twitter usando el móvil
Si usamos Android, usaremos el navegador para acceder a la página de TWDown http://twdown.net
Si usamos iOS, tenemos que usar la aplicación MyMedia File Manager, configurada para usar el servicio de TWDown http://twdown.net
Más detalles en:
https://www.xatakamovil.com/aplicaciones/como-descargar-videos-desde-twitter-en-el-movil
Para descargarlos de Facebook, podemos seguir el siguiente tutorial:
https://www.xatakamovil.com/aplicaciones/como-descargar-videos-de-facebook-desde-el-movil
Si usamos iOS, tenemos que usar la aplicación MyMedia File Manager, configurada para usar el servicio de TWDown http://twdown.net
Más detalles en:
https://www.xatakamovil.com/aplicaciones/como-descargar-videos-desde-twitter-en-el-movil
Para descargarlos de Facebook, podemos seguir el siguiente tutorial:
https://www.xatakamovil.com/aplicaciones/como-descargar-videos-de-facebook-desde-el-movil
sábado, 13 de julio de 2019
Herramientas para trabajar con conjuntos de datos (CSV) desde la línea de comandos
En el artículo: "Five Command Line Tools for Data Science"
https://towardsdatascience.com/five-command-line-tools-for-data-science-29f04e5b9c16
se explican las siguientes herramientas para trabajar, principalmente, con archivos CSV desde el terminal:
https://towardsdatascience.com/five-command-line-tools-for-data-science-29f04e5b9c16
se explican las siguientes herramientas para trabajar, principalmente, con archivos CSV desde el terminal:
- cURL
- csvkit
- IPython
- csvsql
- SciKit-Learn Laboratory
viernes, 12 de julio de 2019
Administrar usuarios en Ubuntu desde línea de órdenes
Añadir un usuario al sistema:
sudo adduser pepito
Comprobar a qué grupos pertenece un usuario:
groups pepito
Si entre los grupos que devuelve aparece 'sudo', entonces ese usuario puede usar sudo.
Añadir un usuario al grupo de usuarios administradores (dar permiso para usar sudo):
sudo gpasswd -a pepito sudo
Quitar un usuario del grupo de usuarios administradores (quitar permiso para usar sudo):
sudo gpasswd -d pepito sudo
Eliminar un usuario del sistema (borrando también su 'home'):
sudo userdel –remove-home pepito
sudo adduser pepito
Comprobar a qué grupos pertenece un usuario:
groups pepito
Si entre los grupos que devuelve aparece 'sudo', entonces ese usuario puede usar sudo.
Añadir un usuario al grupo de usuarios administradores (dar permiso para usar sudo):
sudo gpasswd -a pepito sudo
Quitar un usuario del grupo de usuarios administradores (quitar permiso para usar sudo):
sudo gpasswd -d pepito sudo
Eliminar un usuario del sistema (borrando también su 'home'):
sudo userdel –remove-home pepito
Suscribirse a:
Entradas (Atom)