Crie diretórios para cada arquivo colocado no diretório principal [duplicado]

0

Eu quero colocar uma lista de arquivos em diretórios individuais que crio de cada nome de arquivo. Então, dado os arquivos no diretório raiz:

Movie1.avi
movie2.m4v
movie3.mp4

Eu quero mkdir Movie1 , movie2 e movie3 , em seguida, mova cada arquivo para o diretório correspondente.

Qualquer maneira simples de gerar os diretórios e, em seguida, mover os arquivos.

mkdir << find /Video/Movies/ -maxdepth 1 -type f | sort
mv << find /Video/Movies/ -maxdepth 1 -type f | sort
    
por user258065 28.09.2013 / 01:34

2 respostas

0

Você pode definir essa função e usá-la com um curinga ...

movetofolder(){
for F in $@; do 
    FOLDER=${F%.*}
    mkdir "$FOLDER"
    mv "$F" "$FOLDER"
done
}

Uso: movetofolder *ovie*

    
por 28.09.2013 / 02:30
0

Isso deve funcionar ...

mkdir container && find . -maxdepth 1 -type f -exec mkdir ./container/{} \; -exec mv {} ./container/{}/ \; -exec mv ./container/{} ./ \; && rm -r container

    
por 28.09.2013 / 17:25