Organizar seus arquivos por pastas
Publicado por Zart Rock (última atualização em 16/01/2017)
[ Hits: 8.201 ]
Download 6456.organizador_por_pastas_v3.sh
Download organizador_pastas.sh (versão 2)
Esse script organiza todos os arquivos de uma determinada pasta em subpastas definidas para o usuário.
Utilização:
1) Jogue esse script em uma pastas que deseja organizar os arquivos.
2) Crie as pastas com uma palavra de referência para seus arquivos: Ex.: Seus Arquivos-> Alguma_Coisa.txt, alguma_coisa_02.mp4, ALGUMA COISA 03.mp4, outra coisa 01.mp3
O nome da pasta pode ser Coisa, não importando se as letras são maiúsculas ou minúsculas
3) Entre na pasta(alvo) pelo terminal e execute o script: ./<nomedoscript>.sh
Obs.: para não haver conflito, as pastas devem ter nomes únicos de seus arquivos. Além do script deixar os nomes dos arquivos em minúsculo.
Versão 2 - Enviado por Zart Rock em 03/12/2016
Changelog: Atualização: Corrigido o erro ao mover arquivos quando possuía 10 ou mais arquivos em uma determinada seleção.
Download organizador_pastas.sh
#!/bin/bash # #Utilização: # 1)Jogue esse scritp em uma pastas que deseja organizar as midias # 2)Crie as pastas com uma palavra de referência para suas mídias: # Ex: Seus Arquivos: Alguma_Coisa.mp3, alguma_coisa_02.mp4, ALGUMA COISA 03.mp4, outra coisa 01.mp4 # O nome da pasta pode ser Coisa, não importando se as letras são maiúsculas ou minúsculas # # 3)Entre na pasta das suas mídias pelo terminal e digite: ./<nomedoscript>.sh ls -d */>pastas_antes.txt #Lista os diretórios atuais em um arquivo num_dir=`wc -l pastas_antes.txt | cut -c 1` #Transformas todos os arquivos/pastas para minúsculo e tirar os espaços for i in * do arq_final=`echo "$i" |tr [:upper:] [:lower:]` arq_final=${arq_final// /_} mv "$i" $arq_final done #Começar a organizar ls -d */>pastas.txt # for i in {1..99}; do D=`cat pastas.txt| sed -n -e "$i"p` #Pega o nome da primeira pasta ex:"Exemplo/" D_nome=${D//// } #Retirar o "/" para ficar somente o nome ls *.mp4 | grep $D_nome>midias.txt num_arq=`wc -l midias.txt | cut -c 1` if [[ "$num_arq" -ne "0" ]]; then for count in {1..99}; do a=`cat midias.txt| sed -n -e "$count"p` mv "$a" "$D" if [[ "$count" -eq "$num_arq" ]]; then echo "Parou_ARQ" break fi done fi if [[ "$i" -eq "$num_dir" ]]; then echo "Parou" break fi done #Voltar com os nomes antigos for i in {1..99}; do D_anterior=`cat pastas_antes.txt| sed -n -e "$i"p` D_atual=`cat pastas.txt| sed -n -e "$i"p` mv $D_atual $D_anterior if [[ "$i" -eq "$num_dir" ]]; then echo "Parou" break fi done #Remover aquivos extras rm pastas.txt rm pastas_antes.txt rm midias.txt
Instalar NetBox (container) em CentOS 7
Criar arquivo.toc para gravar CD com o cdrdao
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Falha com leitor de digitais no Ubuntu: sugestões? (0)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (1)