none
VBScript - Ler arquivo de pasta e registrar em variavel interna RRS feed

  • Pergunta

  • Ola pessoal,

    Sou novo em vbscript 

    Poderiam me ajudar a criar um script que:

    Vamos supor que uma pasta tenha 5 arquivos com extensões diferentes.

    Preciso ler o nome dos arquivos que estão dentro dessa pasta e depois registrar o nome de cada arquivo em variaveis internas diferentes.

    Supondo tambem que eu não saberia quantos arquivos teria dentro da pasta.

    quinta-feira, 12 de março de 2020 17:18

Todas as Respostas

  • Boa tarde thiago,

    Vamos entender melhor sua demanda.

    Você quer ler os arquivos e jogar cada arquivo em uma variável? O intuito é jogar esses arquivos para um CSV ou algo nesse sentido?

    Porque a melhor solução nesse caso é jogar cada arquivo em uma única variável dentro de um loop e ir utilizando para o que deseja em cada ciclo, invés de criar N variáveis.

    Seria esse o intuito?

    E só poderia ser em .vbs e não em powershell?


    IT Specialyst | MCSE Core Infrastrucuture | MCSE Produtivity | MCSA Windows Server 2016 | VCP6-DCV | Commvault Professional | MBA | Se a resposta for útil, marque! | If the answer is helpfull, check!

    quinta-feira, 12 de março de 2020 17:28
  • Na verdade não é jogar os dados dos arquivo, é somente o nome do arquivo:

    Exemplo: C:\teste.txt

    Mais imagina a pasta com 10 arquivos e tenho que pegar cada nome de arquivo e por em uma variavel diferente

    Queria pegar o nome "teste.txt" e colocar em uma variavel  

    quinta-feira, 12 de março de 2020 17:40
  • Sim isso eu entendi,

    O que eu quero entender é saber o intuito disso para que possamos oferecer a melhor solução.Qual a finalidade do nome? é executar um comando? atualizar um arquivo? exportar para um csv?


    IT Specialyst | MCSE Core Infrastrucuture | MCSE Produtivity | MCSA Windows Server 2016 | VCP6-DCV | Commvault Professional | MBA | Se a resposta for útil, marque! | If the answer is helpfull, check!

    quinta-feira, 12 de março de 2020 17:49
  • A finalidade do nome é fazer parte do caminho para anexar um arquivo e enviar por e-mail.

    Como o caminho é fixo, por exemplo "C:\"&variavel1 = "C\:teste.txt"

    quinta-feira, 12 de março de 2020 17:57
  • Blz,

    Vamos tentar evoluir porque está meio abstrato ainda.

    O comando Get-ChildItem -Path c:\temp | select name por exemplo vai te trazer o nome de todos os arquivos dentro de uma pasta c:\temp.

    Se no caminho tiver vários arquivos, você pode jogar todos os arquivos dentro de uma variável e criar um bloco de ação para cada nome por exemplo:

    $nomes = Get-ChildItem -Path c:\temp

    for ($nome in $nomes) {

    $somentenome = $nome.name

    $somentenome}

    Esse bloco de ação por exemplo irá coletar todas as informações dos arquivos, colocar dentro de um bloco de ação, e assim criar uma variável que irá coletar somente o nome desse arquivo.

    O que estou tentando demonstrar é que você pode criar um bloco de ação para cada arquivo sem ter que criar múltiplas variáveis, mas pra te dar um código que te atenda precisa explicar melhor o que realmente precisa fazer. Não sei se não estou entendendo muito bem qual sua demanda.


    IT Specialyst | MCSE Core Infrastrucuture | MCSE Produtivity | MCSA Windows Server 2016 | VCP6-DCV | Commvault Professional | MBA | Se a resposta for útil, marque! | If the answer is helpfull, check!

    quinta-feira, 12 de março de 2020 18:08
  • Eu estava tentando utilzar esse codigo, só não sei como colocaria na varivel interna

    Sub CommandButton7_Click()

    Dim fso

    Dim SubPasta

    Dim x, y

    Set fso = CreateObject("Scripting.FileSystemObject")

    For Each SubPasta In fso.GetFolder("C:\Oscilografias\Entrada").Files


    Next

    Set SubPasta = Nothing

    Set fso = Nothing

    End Sub

    quinta-feira, 12 de março de 2020 18:12
  • Acho que o problema é que o Fernando mostro como fazer em Powershell só que você tá tentando fazer em VBscript...

    R. Bohner

    quinta-feira, 12 de março de 2020 19:01
  • Pode me ajudar a fazer em VBscript ?
    quinta-feira, 12 de março de 2020 19:23
  • Infelizmente só entendo de batch e agora a pouco tempo começei a estudar powershell.

    R. Bohner

    quinta-feira, 12 de março de 2020 19:51