criar muintas pastas

1. criar muintas pastas

Ronaldo Junior de sena do vale
mrcanela

(usa Ubuntu)

Enviado em 26/03/2013 - 12:11h

Bom dia pessoal preciso criar mais ou menos 2000 pastas cada uma com um nome diferente, os nomes estão em um arquivo de Excel.
existe alguma forma facil para conseguir fazer isso?


  


2. Re: criar muintas pastas

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 26/03/2013 - 12:22h

mrcanela escreveu:

Bom dia pessoal preciso criar mais ou menos 2000 pastas cada uma com um nome diferente, os nomes estão em um arquivo de Excel.
existe alguma forma facil para conseguir fazer isso?


Coloca os nomes em um arquivo tipo texto, um nome por linha. Daí faz
 $ for i in `cat nomedoarquivo`;do mkdir "$i"; done 

O ` é uma crase.

Alternativamente, usando o vi...

Crie um arquivo de texto com todos os nomes dos diretórios. Daí pelo vi você adiciona ao início de cada linha um "mkdir nnn/" (sem aspas, onde nnn/ é o diretório onde cada diretório será criado). No início do arquivo adicione a linha "#!/bin/bash". Salve o arquivo como executável e execute-o.


3. Re: criar muintas pastas

Daniel Lara Souza
danniel-lara

(usa Fedora)

Enviado em 26/03/2013 - 12:42h

com shell script na veia


4. Re: criar muintas pastas

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 26/03/2013 - 12:42h

danniel-lara escreveu:

com shell script na veia


Shell script é o poder!


5. Re: criar muintas pastas

Ronaldo Junior de sena do vale
mrcanela

(usa Ubuntu)

Enviado em 26/03/2013 - 12:59h

ok vou tentar muito obrigado!



6. Re: criar muintas pastas

Alexandre Furlan
alexfurlan

(usa Ubuntu)

Enviado em 05/08/2013 - 18:47h

Meu caso é muito parecido.
Tenho um servidor de backup. Os arquivos são enviados pelos clientes em formato "backup_unidade.39690970.dia.030820132300.sql.tar.bz2". O número 39690970 é o código da unidade. Tenho um arquivo txt com todos os códigos e nome das unidades (um por linha). Eu preciso de um script que verifica se o código tal já foi criado a pasta com o nome da unidade, caso não tenha sido criado, ele cria a pasta. Nas duas opções, o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2" deve ser movido para a referida pasta. A pasta deve manter o padrão "/nome da unidade/backupatual"

Preciso:
1)O servidor recebe o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2";
2)O script vai comparar o código 39690970 dentro do arquivo txt (código unidade;nome unidade);
3)Se a pasta não existir, o script cria as pastas "/nome da unidade/backupatual" e move o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2" para dentro da pasta "/nome da unidade/backupatual";
4)Se a pasta já existir, simplesmente move o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2" para dentro da pasta "/nome da unidade/backupatual".

Conteúdo do arquivo txt:
30107970;CDD BH
30110970;ACF PIO XII
30110971;CDD FLORESTA
30110972;AGF CONTORNO
30110973;AGF FLORESTA
30111970;ACF ROD. B HORI
30111971;ENT RODOVIARIA
30111972;AGF TERMINAL BH
30112970;AC SAVASSI
e assim por diante...


7. Re: criar muintas pastas

Joca (Altemir Braz Dantas Junior)
jocajuni

(usa Debian)

Enviado em 05/08/2013 - 19:32h

alexfurlan escreveu:

Meu caso é muito parecido.
Tenho um servidor de backup. Os arquivos são enviados pelos clientes em formato "backup_unidade.39690970.dia.030820132300.sql.tar.bz2". O número 39690970 é o código da unidade. Tenho um arquivo txt com todos os códigos e nome das unidades (um por linha). Eu preciso de um script que verifica se o código tal já foi criado a pasta com o nome da unidade, caso não tenha sido criado, ele cria a pasta. Nas duas opções, o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2" deve ser movido para a referida pasta. A pasta deve manter o padrão "/nome da unidade/backupatual"

Preciso:
1)O servidor recebe o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2";
2)O script vai comparar o código 39690970 dentro do arquivo txt (código unidade;nome unidade);
3)Se a pasta não existir, o script cria as pastas "/nome da unidade/backupatual" e move o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2" para dentro da pasta "/nome da unidade/backupatual";
4)Se a pasta já existir, simplesmente move o arquivo "backup_unidade.39690970.dia.030820132300.sql.tar.bz2" para dentro da pasta "/nome da unidade/backupatual".

Conteúdo do arquivo txt:
30107970;CDD BH
30110970;ACF PIO XII
30110971;CDD FLORESTA
30110972;AGF CONTORNO
30110973;AGF FLORESTA
30111970;ACF ROD. B HORI
30111971;ENT RODOVIARIA
30111972;AGF TERMINAL BH
30112970;AC SAVASSI
e assim por diante...




#!/bin/bash

UPLOAD="/upload"
TXT="/etc/arq.txt"

for ARQ in $(ls $UPLOAD)
do
unidade=$(echo $ARQ | cut -d'.' -f2)
existe=$(grep $unidade $TXT)
if [ $? -eq 0 ]; then
if [ -d "/${unidade}/backupatual" ]; then
mv ${UPLOAD}/${ARQ} /${unidade}/backupatual/
else
mkdir -p /${unidade}/backupatual/
mv ${UPLOAD}/${ARQ} /${unidade}/backupatual/
fi
else
echo "Nao existe a unidade ${unidade} no arquivo ${TXT}"
fi
done



[]s
Jocajuni


8. Re: criar muintas pastas

Alexandre Furlan
alexfurlan

(usa Ubuntu)

Enviado em 06/08/2013 - 10:40h

jocajuni escreveu:

#!/bin/bash

UPLOAD="/upload"
TXT="/etc/arq.txt"

for ARQ in $(ls $UPLOAD)
do
unidade=$(echo $ARQ | cut -d'.' -f2)
existe=$(grep $unidade $TXT)
if [ $? -eq 0 ]; then
if [ -d "/${unidade}/backupatual" ]; then
mv ${UPLOAD}/${ARQ} /${unidade}/backupatual/
else
mkdir -p /${unidade}/backupatual/
mv ${UPLOAD}/${ARQ} /${unidade}/backupatual/
fi
else
echo "Nao existe a unidade ${unidade} no arquivo ${TXT}"
fi
done



[]s
Jocajuni


Jocajuni, muito obrigado. Acabo de testar e deu tudo certo.

Libertem-se. Para isso existe o Linux.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts