Ir para conteúdo
Fórum Script Brasil
  • 0

será que preciso de um sistema? ou só um script basta?


ricardo_lda

Pergunta

olá a todos, após algumas indicações resolvi postar a minha dúvida e e contar com a opnião e conselhos dos membros deste forum!

Bem, a princípio gostaria de comunicar que o conhecimento que possuo em "C" é pequeno!, mas isso não significa que não irei me esforçar para melhora-lo!.

Bom, deixando o bla-bla-bla de lado!, a minha dúvida é a seguinte!

Ambiente: micro com linux!

Preciso gerar um relatório mostrando o nome dos arquivos com data e informando o usuário que o criou!, estes arquivos se encontram em um diretório específico!, após gerar esse relatorio, preciso que os arquivos sejam separados de acordo com as suas extenções! ex: a.ext; a.ex1; a.ex2, ..., b.ext, b.ex1, ..., c.ext, c.ex1, ...;

Sendo, que todos os programas com extenção "ext", devam ficar separados dos que possuam extenção "ex2" e assim por diante!.

porém, como tudo na vida possui exceção!, algumas vezes os arquivos com extenção "ext", tenham que ficar com alguns arquivos de extenção "ex2", ou de qualquer outra extenção, e vice versa!.

Eu pensei em gerar uma lista de todos os programas e depois o sistema ler os arquivos gerados comparando linha por linha para quando encontrar uma que seja igual substituir pela extenção que eu decidir!, ex: no diretório existe a.ext e o a.ex1 mas eu preciso que só vá o a.ex1, então o sistema me pergunta qual eu quero!

Hoje eu faço isso na mão! aceso o diretório que possui os arquivos, mando primeiro separar os arquivos em pastas distintas!, os que eu tenho que substituir eu faço na unha e depois que estão todos separados eu do um # ls -la /pastadosarquivos >> nomedapasta.rel

Se alguém puder ajudar!! obrigado!

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

já que está em ambiente Linux, pode fazer isso com Shell Script. Fica bem mais fácil. :)

Claro que dá para fazer com C também, mas acho mais fácil com Shell

Só não entendi qual é a sua dúvida... manipular diretórios, copiar os arquivos, criar diretórios...?

http://www.linuxmanpages.com/man3/readdir.3.php

http://www.linuxmanpages.com/man2/rename.2.php

Link para o comentário
Compartilhar em outros sites

  • 0
já que está em ambiente Linux, pode fazer isso com Shell Script. Fica bem mais fácil. :)

Claro que dá para fazer com C também, mas acho mais fácil com Shell

Só não entendi qual é a sua dúvida... manipular diretórios, copiar os arquivos, criar diretórios...?

http://www.linuxmanpages.com/man3/readdir.3.php

http://www.linuxmanpages.com/man2/rename.2.php

o que preciso é que o sistema gere uma lista dos arquivos que existem em um diretório! e depois separe os arquivos pelas suas extensões! porém, existem arquivos de mesmo nome mas com extensão diferente!! e quando isso ocorrer, eu preciso que só mente um dos arquivos independente da extensão seja mantido! e consequentemente o outro deixado de lado! porque este mesmo sendo descartado para um grupo de extensão pode ser utilizado por outro!

ex: possuo os seguintes arquivos: ricardo.ep1; joao.ep1; pedro.ep1; manu.ep2; caro.ep2; ricardo.ep2

preciso que uma lista seja gerada! ex: ricardo.ep1 *

joao.ep1

pedro.ep1

manu.ep2

caro.ep2

ricardo.ep2 *

após gerar a lista, verifique se existe algo como ricardo.ep1 e ricardo.ep2! que seriam programas identicos mas destinados a lugares destintos! porém, o

ricardo.ep1 deve ir para o diretório onde estão os arquivos *.ep1 mas o ricardo.ep2 não pode ir para lugar algum! mas não pode ser descartado porque poder ser que ele seja nessário em um grupo de arquivos *.ep3!! por exemplo!

Espero ter deixado mais claro agora!! é que é bem confuso mesmo!!

Editado por ricardo_lda
Link para o comentário
Compartilhar em outros sites

  • 0

Como você gostaria que fosse a execução do programa?

exe.:

Diretório:

blabla

Arquivos contidos no diretório blabla:

Lista de arquivos .exe:

bla.exe

blaba.exe

Lista de arquivos .jpg:

Nenhum arquivo na extenção .jpg foi encontrado

Assim?

Link para o comentário
Compartilhar em outros sites

  • 0
Ficará mais fácil usar aquilo que ele sabe usar. Resguardadas as devidas diferenças, claro. Mas em C ANSI o programa poderá ser portado pra Windows facilmente. Se o problema for recorrente, o recurso poderá se tornar necessário, no futuro, também em Windows.

Pensando assim, você tem razão.

Porém, eu levei em consideração esta citação dele:

Bem, a princípio gostaria de comunicar que o conhecimento que possuo em "C" é pequeno!, mas isso não significa que não irei me esforçar para melhora-lo!.

Se o conhecimento de Shell for maior que o de C, creio que será mais fácil em Shell.

Não que em C seja difícil. Talvez um pouco mais trabalhos, mas não difícil.

Convenhamos: manipular arquivos com Shell/AWK é bem mais simples que em C.

Link para o comentário
Compartilhar em outros sites

  • 0
Como você gostaria que fosse a execução do programa?

exe.:

Diretório:

blabla

Arquivos contidos no diretório blabla:

Lista de arquivos .exe:

bla.exe

blaba.exe

Lista de arquivos .jpg:

Nenhum arquivo na extenção .jpg foi encontrado

Assim?

A lógica é essa!! só não seria nesse formato! seria como se os arquivos .exe ficassem em um arquivo TXT e o .jpg em outro! mas.é mais ou menos por aí!! vou seguir o concelho do Beraldo, começar a escrever e postar aqui os erros e as dúvidas em cima do que estou escrevendo! como é algo complicado de explicar! por mais que eu tenha colocado os exemplos! e até mesmo pra eu entender levou um certo tempo! acredito que com essa "idéia" escrita fique mais fácil para vocês me ajudarem!

Comece a fazer e poste as dúvidas.

PS: Ainda acho que seria bem mais simples em Shell...

pessoal! agradeço a todos pela preocupação até este momento!

vou aproveitar esse carnaval para ler um pouco mais sobre C para ver oque será melhor! e colocar no papel tudo oque acho que deva resolver! aí provavelmente na quarta ou quinta da semana que vem eu deva estar postando aqui mais dúvidas!! por hora!! valeu mesmo!!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...