Pular para o conteúdo

Criar uma pasta para cada filme.

Responder tópico
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
  • Denunciar
  • Indicar

1. Criar uma pasta para cada filme.

Enviado em 23/11/2018 - 17:30h

Galera tenho uma pasta cheia de filmes, gostaria de saber se é possível criar um comando que crie uma pasta para cada, essa pasta precise ter o nome do filme que esta dentro dela, gostaria de fazer isso para organizar as capas com cada filme.
Estava fazendo assim, já baixando criando a pasta e renomeando, mais agora tenho vários já baixados.
Se poderem arrumar meu comando também agradeço. Retirei o link certo estava muito grande.


cd / && cd /home && cd Acao && mkdir thorragnarok && cd thorragnarok && wget https://www.dropbox.com/Ragnarok.mp4?dl=1; wget https://www.dropbox.com/s/Ragnarok.jpg?dl=1 && for arq in *?dl=1*; do mv $arq `echo $arq|sed 's/?dl=1//'` && for arq in *?dl=1*; do mv $arq `echo $arq|sed 's/?dl=1//'` && cd ..; done

Responder tópico

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

2. Re: Criar uma pasta para cada filme.

Enviado em 23/11/2018 - 18:38h

Paulo.marciofc escreveu:

Galera tenho uma pasta cheia de filmes, gostaria de saber se é possível criar um comando que crie uma pasta para cada, essa pasta precise ter o nome do filme que esta dentro dela, gostaria de fazer isso para organizar as capas com cada filme.
Estava fazendo assim, já baixando criando a pasta e renomeando, mais agora tenho vários já baixados.
Se poderem arrumar meu comando também agradeço. Retirei o link certo estava muito grande.


cd / && cd /home && cd Acao && mkdir thorragnarok && cd thorragnarok && wget https://www.dropbox.com/Ragnarok.mp4?dl=1; wget https://www.dropbox.com/s/Ragnarok.jpg?dl=1 && for arq in *?dl=1*; do mv $arq `echo $arq|sed 's/?dl=1//'` && for arq in *?dl=1*; do mv $arq `echo $arq|sed 's/?dl=1//'` && cd ..; done


Boa noite.
O comando abaixo "pega" os arquivos da pasta ORIGEM com a Extensão definida e
o nome da nova pasta, que é o arquivo sem a extensão...
Segue:
for arq in $(ls -1 /ORIGEM/*.EXTENSÃO);do
pasta=$(sed -r 's/\.[a-z]+$//' <<< "$arq"|awk -F"/" '{print $NF}')
echo "Arquivo: $arq : Pasta: $pasta"
done

Att.:
Marcelo Oliver

3. Criar uma pasta para cada filme.

Enviado em 24/11/2018 - 11:02h

Sim mais ele não coloca cada um em uma pasta nem com o nome dele.

4. Re: Criar uma pasta para cada filme.

Enviado em 24/11/2018 - 15:08h

v aí se te serve

Lista arquivos .mp4 do diretório, cria diretórios com os nomes e os move.

#!/bin/bash
for x in `ls *.mp4`;do
path=`echo $x | cut -d'.' -f1`
mkdir $path
mv $x $path
done


------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------

5. Re: Criar uma pasta para cada filme.

Enviado em 24/11/2018 - 16:51h

Paulo.marciofc escreveu:

Sim mais ele não coloca cada um em uma pasta nem com o nome dele.


Em nenhum momento "disse" que o script cria a pasta e coloca o arquivo na mesma....
O mesmo, define as variáveis, arq e pasta....
Ai é somente dar os comandos para a criação das pastas e para mover os arquivos....
Bastante simples....

for arq in $(ls -1 /ORIGEM/*.EXTENSÃO);do
pasta=$(sed -r 's/\.[a-z]+$//' <<< "$arq"|awk -F"/" '{print $NF}')
echo "Arquivo: $arq : Pasta: $pasta"
done


att.:
marcelo oliver

6. Re: Criar uma pasta para cada filme.

Enviado em 24/11/2018 - 22:23h

Veja aí se resolve:
#!/bin/bash

# Local dos arquivos e extensão dos mesmos
DIR="$HOME/Vídeos"
EXT="mp4"

# Evita problemas com espaços nos nomes dos arquivos
IFSOLD=$IFS
IFS=$'\n'

# Cria uma pasta para cada arquivo e o move para dentro
for ARQ in $(ls -1 $DIR/*.$EXT); do
PASTA=${ARQ%.$EXT}
mkdir $PASTA && mv $ARQ $PASTA
done

# Restaura o IFS padrão
IFS=$IFSOLD

7. Re: Criar uma pasta para cada filme.

Enviado em 24/11/2018 - 23:44h

Ryuk escreveu:

Veja aí se resolve:
#!/bin/bash

# Local dos arquivos e extensão dos mesmos
DIR="$HOME/Vídeos"
EXT="mp4"

# Evita problemas com espaços nos nomes dos arquivos
IFSOLD=$IFS
IFS=$'\n'

# Cria uma pasta para cada arquivo e o move para dentro
for ARQ in $(ls -1 $DIR/*.$EXT); do
PASTA=${ARQ%.$EXT}
mkdir $PASTA && mv $ARQ $PASTA
done

# Restaura o IFS padrão
IFS=$IFSOLD


legal essa variável 'ifs', só não entendi essa parada de voltar ao padrão !!!


------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------

Responder tópico

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Responder tópico

Entre na sua conta para responder.

Fazer login para responder