Un suggerimento... php,almeno penso.
Non so ancora collegarmi ai server![]()
Un suggerimento... php,almeno penso.
Non so ancora collegarmi ai server![]()
@ramy89
Non penso che a Carmine serva il C o il PHP: lui (se ho ben capito) vuole creare un file batch che gli permetta di cancellare alcune cartelle da una lista di server.
@carmine
Come sono collegati fa loro i server (internet o cos'altro)?
Inoltre dimmi se ho capito bene: il file Batch deve risiedere sul tuo computer e tu vuoi che avviandolo questo vada a leggere da una lista a quali server connettersi, si connetta ai server e cancelli delle cartelle?
Se è così: come fai a sapere quali cartelle vanno eliminate?
Inoltre puoi postare i siti da cui hai ricavato il codice batch? Hai provato a lasciar correre il tuo batch scritto fin'ora? No, perchè a me dà qualche errore (sono su Windows7 a 32 bit e mi dice che il comando do non esiste, la sintassi dell'If non è giusta e altro).
P.S.: Su che sistema operativo stai lavorando?
Attendo risposte
![]()
![]()
Le vie del Signore sono infinite. È la segnaletica che lascia a desiderare.
La luce viaggia più veloce del suono. Per questo alcune persone sembrano brillanti finchè non parlano.
Occhio per occhio uguale... occhio al quadrato
ciao ShaleN,
i servers sono collegati tra loro in una wan aziendale, quindi attraverso Internet.
La collocazione del file batch non è importante al momento, piochè posso anche pensare di spostarlo su un server raggiungibile da tutti i sites e lanciare lo script da li.
Lo script deve richiamare sia il file txt con l'elenco dei server, sia un batch che PROVVEDE SOLO alla cancellazione di determinate cartelle da un determinato percorso (nel mio caso dal percorso C\Docum&Sett\ dovrebbe cancellare "Utente1" "Utente2", lasciando intatti gli altri profili).
Lo script lo recuperai 3-4 gg fa da qualche sito, purtroppo non ricordo quale...
Attualmente lavoro su un xp ma il tutto dovrà girare su server2k3
Sto provando così:
Dim fso, SourceFolder, wshShell
Set fso = CreateObject("Scripting.FileSystemObject")
SourceFolder = "C:\Tools\PsTools"
Set LeggiFile = fso.OpenTextFile("C:\Tools\PsTools\elencoserver2.t xt")
If (fso.fileexists("C:\Tools\PsTools\Check.log")) then
Set LogFile = fso.OpenTextFile("C:\Tools\PsTools\Check.log",8)
Else
Set LogFile = fso.CreateTextFile("C:\Tools\PsTools\Check.log", TRUE)
End If
Set wshShell = WScript.CreateObject ("WScript.Shell")
wshShell.run "CMD /C "C:\Tools\PsTools\psexec @elencoserver2.txt -c remdir.bat"
Set oShell = Nothing
If Err.Number <> 0 then
LogFile.WriteLine (ServerCorrente & " Errore!")
Err.clear
End if
Set fso = Nothing
MA ANCORA NON VAAAAA!!!! MI STA DANDO UNA SERIE DI ERRORI IN SEQUENZA!!
HELP MEEE!!!!!!!!!
fatto!!! Funziona!!!
Dim fso, SourceFolder, wshShell
Set fso = CreateObject("Scripting.FileSystemObject")
SourceFolder = "C:\Tools\PsTools"
Set LeggiFile = fso.OpenTextFile("C:\Tools\PsTools\elencoserver2.t xt")
If (fso.fileexists("C:\Tools\PsTools\Check.log")) then
Set LogFile = fso.OpenTextFile("C:\Tools\PsTools\Check.log",8)
Else
Set LogFile = fso.CreateTextFile("C:\Tools\PsTools\Check.log", TRUE)
End If
Set wshShell = WScript.CreateObject ("WScript.Shell")
wshShell.run "CMD /C C:\Tools\PsTools\psexec @elencoserver2.txt -c remdir.bat"
Do while Not LeggiFile.AtEndOfStream
ServerCorrente = LeggiFile.ReadLine
If Err.Number <> 0 then
LogFile.WriteLine (ServerCorrente & " Errore!")
End if
Loop
Set wshShell = Nothing
Set fso = Nothing
Il mio problema ora ho scoperto essere il file check.log. In pratica vorrei che mi creasse il log per ogni esito negativo, ma ogni volta che lancio il vbs mi effettua l'operazione di remdir.bat, crea il log ma non scrive nulla, assolutamente vuoto!!
posso rompervi un altro po' le scatole, boys???
grazie ancora!
carmine
Chiedo scusa per il mio post di prima: pensavo che il codice che avevi postato fosse batch e alcune cose non mi tornavanoOriginariamente inviato da carmine.salemme:
...ma ogni volta che lancio il vbs mi effettua l'operazione di remdir.bat...![]()
Per il resto, non conosco VBScript e quindi non ti posso aiutare, sorry![]()
![]()
![]()
P.S.: Quando posti del codice, usa i tag CODE e /CODE messi tra parentesi quadre, così mantieni l'identatura, altrimenti non si capisce niente.
![]()
Le vie del Signore sono infinite. È la segnaletica che lascia a desiderare.
La luce viaggia più veloce del suono. Per questo alcune persone sembrano brillanti finchè non parlano.
Occhio per occhio uguale... occhio al quadrato
[QUOTEP.S.: Quando posti del codice, usa i tag CODE e /CODE messi tra parentesi quadre, così mantieni l'identatura, altrimenti non si capisce niente.
[/QUOTE]
grazie mille lo stesso! terrò conto del suggerimento!![]()
chiedo scusa ai moderatori se ho postato la discussione nella sezione sbagliata..
Anche oggi sono qui a rompervi le scatole per cercare di far funzionare questo maledetto script come vorrei, ma mi rendo anche conto che non avendo chissà quali conoscenze non posso pretendere nulla, ed è per questo che mi sto rivolgendo a chi ne sa più di me, se magari mi potesse essere d'aiuto.
lo script al momento lavora così:
e avrei l'esigenza di creare un log, per valutare eventuali errori riscontrati, oppure un output della shell, li andrei a filtrare poi manualmente,non è un problema. ho già provato aggiungendo il comando di output dopo aver lanciato remdir.bat (wshShell.run "CMD /C C:\Tools\PsTools\psexec @elencoserver2.txt -c remdir.bat" > c:\check.log) con esito negativo.codice:Dim fso, wshShell Set fso = CreateObject("Scripting.FileSystemObject") If (fso.fileexists("C:\Tools\PsTools\Check.log")) then Set LogFile = fso.OpenTextFile("C:\Tools\PsTools\Check.log",8) Else Set LogFile = fso.CreateTextFile("C:\Tools\PsTools\Check.log", TRUE) End If Set wshShell = WScript.CreateObject ("WScript.Shell") wshShell.run "CMD /C C:\Tools\PsTools\psexec @elencoserver2.txt -c remdir.bat" Set wshShell = Nothing Set fso = Nothing
qualcuno ha qualche altra idea?
grazie mille a tutti
Carmine