alguien sabe si existe la forma de organizar archivos en linux con un script?
por ejemplo que tenga una cancion en un folder y la mande automaticamente a la carpeta de musica o una imagien y la mande a la carpeta de imagenes?
o algun script para extraer archivos de un .rar o .zip?
Claro que se puede, pero detalla un poco más que es lo que quieres.
rar x file.rar
unzip file.zip
es que voy a subir archivos, algunos en .zip o .rar y los demas en .mp3, jpg lo comun
mediante webmin los voy a suvir a una carpeta y lo que ocupo es que cuando los envien los acomode o descomprima automaticamente, el script y su ejecucion lo puedo acomodar con el webmin
nada mas no tengo el script que haga eso :o
encontre este codigo #!/bin/bash
#
#
#
################################################
#
# Functions
#
################################################
DIR=$(pwd)
Music()
{
if [ -e "$DIR/Music" ];then
echo -n ""
else
mkdir Music
fi
mv *.mp3 "$DIR/Music" 2>/dev/null
mv *.wav "$DIR/Music" 2>/dev/null
mv *.midi "$DIR/Music" 2>/dev/null
}
Movies()
{
if [ -e "$DIR/Movies" ];then
echo -n ""
else
mkdir Movies
fi
mv *.avi "$DIR/Movies" 2>/dev/null
mv *.mpeg "$DIR/Movies" 2>/dev/null
mv *.mpg "$DIR/Movies" 2>/dev/null
}
Pictures()
{
if [ -e "$DIR/Pictures" ];then
echo -n ""
else
mkdir Pictures
fi
mv *.jpeg "$DIR/Pictures" 2>/dev/null
mv *.jpg "$DIR/Pictures" 2>/dev/null
mv *.gif "$DIR/Pictures" 2>/dev/null
mv *.png "$DIR/Pictures" 2>/dev/null
}
Compressed()
{
if [ -e "$DIR/Compressed" ];then
echo -n ""
else
mkdir Compressed
fi
mv *.zip "$DIR/Compressed" 2>/dev/null
mv *.rar "$DIR/Compressed" 2>/dev/null
mv *.7z "$DIR/Compressed" 2>/dev/null
mv *.tar "$DIR/Compressed" 2>/dev/null
mv *.tar.bz2 "$DIR/Compressed" 2>/dev/null
mv *.tar.gz "$DIR/Compressed" 2>/dev/null
}
################################################
#
# Main Program
#
################################################
Music
Movies
Pictures
Compressed
pero no hace nada, creo que hace las carpetas en lugar de utilizar las que ya tiene el sistema, entonces como le haria para mover archivos de por ejemplo, musica a la carpeta musica?
Bueno, lo haré a mi manera, bueno, dame algunos minutos para hacerlo.
¿El script en qué directorio checará que dichos archivos estén?
en el que sea pero psss "/" en la raiz del sistema
Prueba esto:
#!/bin/bash
if [ ! -d "./Music" ]
then
mkdir "./Music";
mv *.mp3 *.wav *.midi &> /dev/null
else
mv *.mp3 *.wav *.midi &> /dev/null
fi
if [ ! -d "./Movies" ]
then
mkdir "./Movies";
mv *.avi *.mpeg *.mpg ./Movies &> /dev/null
else
mv *.avi *.mpeg *.mpg &> ./Movies /dev/null
fi
if [ ! -d "./Pictures" ]
then
mkdir "./Pictures";
mv *.jpeg *.jpg *.gif *.png ./Pictures &> /dev/null
else
mv *.jpeg *.jpg *.gif *.png ./Pictures &> /dev/null
fi
if [ ! -d "./Compressed" ]
then
mkdir "./Compressed"
mv *.zip *.rar *.7z *.tar *.tar.bz2 *.tar.gz ./Compressed &> /dev/null
else
mv *.zip *.rar *.7z *.tar *.tar.bz2 *.tar.gz ./Compressed &> /dev/null
fi
solo muebe las imagenes, lo demas nop
me sale esto:
root@server2 Downloads]# ./script2.sh
./script2.sh: line 8: ./Music: Is a directory
./script2.sh: line 16: ./Movies: Is a directory