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

Dúvida Sobre Como Criar Um Arquivo Com Nome + Data


Sky_Damage

Pergunta

Estou usando a seguinte função para criar e depois escrever num arquivo .bat

Set objSaidabat = objSistArqbat.OpenTextFile( "teste.bat", numForWrite, True )

mas aí o arquivo gerado seria chamado teste.bat, e eu quero fazer ele se chamar data_atual+teste.bat (23/08/05-teste.bat), pois este script é rodado todos os dias, e assim o arquivo é sempre reescrito, não quero escrever o próximo no mesmo abaixo dos dados existentes, quero que para cada dia tenha um arquivo diferente. Então a melhor forma que achei foi colocar a data no início do nome, mas já tentei várias coisas e não consegui, quem pode me ajudar?

Obs.: é em vbs.

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

acho q isso resolve:

arquivo = Format(Date, "dd-mm-yyyy") & "-teste.bat"

Set objSaidabat = objSistArqbat.OpenTextFile(arquivo, numForWrite, True )

O problema é que ele não aceita criar um nome só com o parametro 'arquivo', tem de estar entre aspas duplas, já tentei isto.

arquivo = Format(Date, "dd-mm-yyyy") & "-teste.bat"

Set objSaidabat = objSistArqbat.OpenTextFile(arquivo, numForWrite, True )

Alguém sabe outro modo?

Link para o comentário
Compartilhar em outros sites

  • 0

Olha o código aí, se retirar "as string" do Dim datahoje e retirar "datahoje &" do OpenTextFile ele roda numa boa, mas vai sempre sobreescrever o arquivo teste.bat, mas funciona, mas quero manter um histórico delas:

Option Explicit

Dim objSistArq, objSistArqbat, objSaidabat

Set objSistArq = CreateObject("Scripting.FileSystemObject")

Set objSistArqbat = CreateObject( "Scripting.FileSystemobject" )

Dim arquivo, numfinal

Dim numForWrite: numForWrite = 2

Dim datahoje as string

datahoje = date

numfinal = 0

Set objSaidabat = objSistArqbat.OpenTextFile( datahoje & "-teste.bat", numForWrite, True )

Set arquivo = objSistArq.GetFile("C:\diretorio")

numfinal = arquivo.size

objSaidabat.Write "@echo off" & Chr(13) & Chr(10)

objSaidabat.Write "@echo" & " "

objSaidabat.Write numfinal

objSaidabat.Close

Pode me dar um help Bicicleta ou qualquer outro que souber como resolvo?

Obs.: para pegar os bytes do tamanho, tem que colocar o diretório no local C:\diretorio. Valeu.

ph34r.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Não dá, já peguei uma variavel Dim nome, atribiu meu nome (nome = "rodrigo") e coloquei assim, antes do "arquivo.bat":

Set objSaidabat = objSistArqbat.OpenTextFile( nome & "-teste.bat", numForWrite, True )

mas ele dá erro, não aceita nada fora das aspas duplas.

Tb já tentei como me falou usando o format, ele formata certo, mas na hora do comando acima dá o mesmo erro.

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,2k
    • Posts
      652k
×
×
  • Criar Novo...