LinuxParty
Pongamos que tienes una colección de ficheros de música (o video) que quieres abrir aleatoriamente, cansado de ser reproducidos uno tras otro, o una lista predeterminada.
Pues estos ficheros son tu solución, este primer ejemplo es un Script de Linux, al que le hemos incluido un fichero de configuración, para que puedas abrir con tu reproductor multimedia preferido, en este ejemplo, el reproductor es SMPlayer.
Para Linux, "necesitas" instalar kdialog, si no lo tienes instalado.
Para una versión de "sólo texto", puedes usar "dialog"
Al fichero lo vamos a llamar "azar.sh", lo debes guardar en tu carpeta de música o vídeos, y recuerda darle permisos de ejecución con:
chmod a+x azar.sh
Este es el código:
#/bin/bash load_conf() { CONF="./azar.conf" if [ -f "$CONF" ] && [ ! "$CONF" == "" ]; then source $CONF else head echo "\$CONF not found." exit 1 fi } load_conf echo $CONF kdialog --yesnocancel "¿Ponemos música un Rato?" --yes-label Adelante --no-label DETENER --cancel-label CANCELAR case $? in 0) echo "Ponemos música" echo "Abriendo un fichero de música al azar" echo 'COMANDO="smplayer"' > ./azar.conf # Si elige "mplayer", en vez de smplayer, los ficheros saltarán automáticamente. echo " " for i in {1..20}; do load_conf Aqui=`pwd` Fichero=`find . -size +1M | shuf -n 1` echo "$Fichero" $COMANDO "$Fichero" done exit 0 ;; 1) echo "DETENIENDO TODO, Paramos la música" echo 'COMANDO="#"' > ./azar.conf killall $COMANDO exit 0 ;; 2) echo "CANELADO" exit 0 ;; esac
Necesitas crear el fichero de configuración, que para este ejemplo será el siguiente:(recuerda que a través del script puedes cambiar el reproductor)
COMANDO="smplayer"
Y para aquellos que por desgracia no se puedan liberar de Windows, este fichero de proceso por lotes BAT:
@echo off & setlocal :: start of main rem Set your path here: set "workDir=%cd%" rem Read the %random%, two times is'nt a mistake! Why? Ask Bill. rem In fact at the first time %random% is nearly the same. @set /a "rdm=%random%" set /a "rdm=%random%" rem Push to your path. pushd "%workDir%" rem Count all files in your path. (dir with /b shows only the filenames) set /a "counter=0" for /f "delims=" %%i in ('dir /s /b ^|find "."') do call :sub1 rem This function gives a value from 1 to upper bound of files set /a "rdNum=(%rdm%*%counter%/32767)+1" rem Start a random file set /a "counter=0" for /f "delims=" %%i in ('dir /s /b ^|find "."') do set "fileName=%%i" &call :sub2 rem Pop back from your path. popd "%workDir%" goto :eof :: end of main :: ********************************************************************************** :: start of sub1 :sub1 rem For each found file set counter + 1. set /a "counter+=1" goto :eof :: end of sub1 :: ********************************************************************************** :: start of sub2 :sub2 rem 1st: count again, rem 2nd: if counted number equals random number then start the file. set /a "counter+=1" if %counter%==%rdNum% (start "" "%fileName%") goto :eof :: end of sub2 :: ********************************************************************************** :: -snap--- end of batch
Por supuesto, eres libre de modificar los códigos fuentes aquí descritos.

-
Ubuntu
- Las discusiones de desarrollo de Ubuntu se trasladarán de IRC a Matrix
- Crear de un servidor NFS, como almacenamiento independiente con GlusterFS En Ubuntu
- 20 años de Ubuntu: Canonical lo celebra con el lanzamiento de 24.10, que es excepcional como siempre
- Ahora puedes actualizar Ubuntu 22.04 LTS a Ubuntu 24.04 LTS. Aquí te explicamos cómo
- El App Center de Ubuntu ahora finalmente admite la instalación de paquetes DEB locales
- Ubuntu 24.04 ahora se ejecuta en Nintendo Switch (no oficialmente)
- Las 10 mejores distribuciones de Linux basadas en Ubuntu
- Cómo recuperar, reparar y reinstalar el cargador Boot Loader de arranque GRUB en Ubuntu Linux
- Instalar Nvidia Driver en Ubuntu Linux (último controlador patentado)
- Disco de Recuperación NTFS de Windows desde Linux
- Tener tu propia nube con ownCloud3 con Nginx (LEMP) en Debian/Ubuntu
- Ejecutar Simple Groupware en Nginx (LEMP) en Debian Squeeze/Ubuntu 11.10
- Ejecutar Shopware Community Edition con Nginx en Debian Squeeze/Ubuntu 12.04
- Cosas que hacer después de instalar Ubuntu Linux
- 25 Comandos Básicos Útiles de APT-GET y APT-CACHE para la Gestión de Paquetes