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

Programa simples copy & paste


Guest --Eduardo --

Pergunta

Guest --Eduardo --

Ae galera, sei o quanto é chato esses iniciantes. Mas apesar disso venho aqui com uma dúvida.

Por um acaso existe algum programa que conseguiria copiar um arquivo (Ctrl+C) e cola-lo (Ctrl+V) em todas as subpastas a partir de um diretório?

Por exemplo, "C:\Jogos" dentro dessa pasta, tem 13.000 outras pastas (nenhuma subpasta, cada uma contém apenas arquivos). Existe (ou, alguma pessoa caridosa saberia e poderia criar) um programa que "jogasse" um (na verdade 3) arquivos dentro de cada uma dessas 13.000 pastas?

desde já, grato. Fico no aguardo de alguma resposta.

E.F.J.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Tente este:

#! /usr/bin/python

import os, os.path, subprocess

diretorio_pai = "caminho_completo_para_diretorio_pai"
arquivos = ["arquivo_1.xyz", "arquivo_2.xyz"]
cmd = ["cp", "", ""]

for diretorio_filho in os.listdir(diretorio_pai):
    diretorio_filho = os.path.join(diretorio_pai, diretorio_filho)
    if os.path.isdir(diretorio_filho):
        for arquivo in arquivos:
            cmd[1] = os.path.join(diretorio_pai, arquivo)
            cmd[2] = diretorio_filho
            print cmd
            subprocess.call(cmd)

Coloque os arquivos a serem copiados dentro do diretório pai. Eu não lembro se o comando de copiar no Windows é cp ou copy. Se for copy substitua no comando.

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

  • 0
Guest --Eduardo --
Tente este:

#! /usr/bin/python

import os, os.path, subprocess

diretorio_pai = "caminho_completo_para_diretorio_pai"
arquivos = ["arquivo_1.xyz", "arquivo_2.xyz"]
cmd = ["cp", "", ""]

for diretorio_filho in os.listdir(diretorio_pai):
    diretorio_filho = os.path.join(diretorio_pai, diretorio_filho)
    if os.path.isdir(diretorio_filho):
        for arquivo in arquivos:
            cmd[1] = os.path.join(diretorio_pai, arquivo)
            cmd[2] = diretorio_filho
            print cmd
            subprocess.call(cmd)

Coloque os arquivos a serem copiados dentro do diretório pai. Eu não lembro se o comando de copiar no Windows é cp ou copy. Se for copy substitua no comando.

Orra Kakao, vlw pela boa vontade em ajudar kara!!!

Bom, eu na verdade nunca programei... Por isso quando comecei a ler seu post não tinha nem idéia de o que fazer com o código... aí eu vi que você tinha um endereço pra aulas de python (http://programming-crash-course.com/pt_br)... Eu li praticamente tudo (exceto apenas a parte em ingles)

Poxa kara, programação é MUITO legal!! aushusa, gostei... quando eu tiver mais tempo quero estudar mais profundamente (primeiro qro aprender php e java... Agora to estudando html, dps vo pra php e java em seguida.... dps qro ver programação!!! =D )

Mas então, ficaram algumas dúvidas sobre o que fazer com o código... mas agora (dps do seu corso, já ajudou muito!)

bom, eu criei a pasta pai aqui: c:\pai

os arquivos que o programa vai copiar ficam dentro dessa pasta então... ok

onde, no código, está escrito: "["arquivo_1.xyz", "arquivo_2.xyz"]" eu vou substituir pelo nome dos arquivos? E se no caso forem 3 arquivos?

Bom, e também onde você escreveu: "cmd = ["cp", "", ""]".. nessa lista tem 3 ítens, "cp", "", ""... as "aspas" que não contém nada dentro ficam assim mesmo? ou deveria substituir pelo correto (caso seja copy ou cp mesmo)?

Ah, e pelo que eu entendi da minha interpretação do código, ele copiaria os arquivos para todas as subpastas da pasta filho... Mas onde eu tenho que por essa pasta filho?

bom... desculpa tantas dúvidas... E novamente agradeço pela resposta

Link para o comentário
Compartilhar em outros sites

  • 0
onde, no código, está escrito: "["arquivo_1.xyz", "arquivo_2.xyz"]" eu vou substituir pelo nome dos arquivos? E se no caso forem 3 arquivos?

Substitua pelos nomes dos arquivos a serem copiados e inclua mais um: ["arquivo_1.xyz", "arquivo_2.xyz", "arquivo_3.xyz"]

Bom, e também onde você escreveu: "cmd = ["cp", "", &quot]".. nessa lista tem 3 ítens, "cp", "", ""... as "aspas" que não contém nada dentro ficam assim mesmo? ou deveria substituir pelo correto (caso seja copy ou cp mesmo)?

Se o comando Windows for cp deixe exatamente como está. Caso seja copy troque cp por copy.

Ah, e pelo que eu entendi da minha interpretação do código, ele copiaria os arquivos para todas as subpastas da pasta filho... Mas onde eu tenho que por essa pasta filho?

O programa copia os arquivos da pasta pai "C:\pai" para as pastas filho como por exemplo "C:\pai\filho_1"

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

  • 0
Guest --Eduardo --
onde, no código, está escrito: "["arquivo_1.xyz", "arquivo_2.xyz"]" eu vou substituir pelo nome dos arquivos? E se no caso forem 3 arquivos?

Substitua pelos nomes dos arquivos a serem copiados e inclua mais um: ["arquivo_1.xyz", "arquivo_2.xyz", "arquivo_3.xyz"]

Bom, e também onde você escreveu: "cmd = ["cp", "", &quot]".. nessa lista tem 3 ítens, "cp", "", ""... as "aspas" que não contém nada dentro ficam assim mesmo? ou deveria substituir pelo correto (caso seja copy ou cp mesmo)?

Se o comando Windows for cp deixe exatamente como está. Caso seja copy troque cp por copy.

Ah, e pelo que eu entendi da minha interpretação do código, ele copiaria os arquivos para todas as subpastas da pasta filho... Mas onde eu tenho que por essa pasta filho?

O programa copia os arquivos da pasta pai "C:\pai" para as pastas filho como por exemplo "C:\pai\filho_1"

Isso ae!! Vlw Kakao, deu certo!!

vlw 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,6k
×
×
  • Criar Novo...