PDA

Visualizza versione completa : batch per spegnere tutti i pc della rete


xmatrix83
09-02-2007, 17.31.59
Volevo creare un batch che spenga tutti i pc della rete.

volevo usare il comando shutdown
e net view per avere la lista dei pc della rete.

pensavo di fare cosi

net view >pc.txt

cosi mi crea una lista
dopo dovrei richiamare i nomi pc uno ad uno metterli in una variabile ed insere questa variabile nel comando shutdown -s %var% -t 00

mi sapete dire come posso inserire il contenuto riga per riga di quel file txt in una variabile??

Xtefano
09-02-2007, 18.11.18
Con il FOR .... ti vuoi male a fare queste domande il venerdi pomeriggio :) ....

Se cerchi in precedenti post ci sono diversi esempi dell'uso di FOR, è abbastanza semplice eseguire un comando sulla base del contenuto di un file.... attenzione però a togliere tutto ciò che c'è dopo il primo spazio dato che NET VIEW ti restituisce oltre al nome anche la descrizione ;)

Ora ti lascio e vado in black-out internettico da weekend :jump:
eventualmente ci risentiamo lunedi ...




HTH


Byez

Stefano

xmatrix83
12-02-2007, 12.38.49
ho dato un occhiata ma non ho trovato niente di utile, :(

LoryOne
12-02-2007, 12.58.09
Per poter spegnere i PC in una rete, tali PC devono essere predisposti affinchè un amministratore di rete possa eseguire tale operazione non l'utility shutdown.

Questo comporta la creazione preventiva di un canale per comunicazioni interprocesso che necessita delle corrette credenziali di account (nome utente e password) che possono essere già presenti sui PC interessati, oppure specificate a riga di comando.

P8257 WebMaster
12-02-2007, 14.13.10
Oltre a quello che è già stato detto posto comunque il codice, casomai potesse servire...


@eco off
NET VIEW > list
FOR /F "eol=; tokens=1* delims=, " %%i in (list) do shutdown -m %%i -s

del list

P8257 WebMaster
12-02-2007, 14.15.27
O anche ...


FOR /F "eol=; tokens=1* delims= " %%i in (list) do shutdown -m %%i -s

xmatrix83
12-02-2007, 14.58.54
grazie mille, ora provo, ovviamente l'utility viene lanciata dal controller di dominio, quindi le credenziali ci sono.

xmatrix83
12-02-2007, 15.01.35
avevo pensato anche di fare una group poilicy che come script di accensione dei client creasse un operazione pianificata con AT, e tale operazione avrebbe dovuto eseguire lo shutdown all'ora prefissata.

Ma se riesco a fare questo batch a parte che mi piace di +, poi puo' essermi comodo se per qualche ragione devo fare un riavvio di tutte le macchine.

xmatrix83
12-02-2007, 15.09.39
webmaster sei grandissimo! funziona alla perfezione, credevo venisse fuori una cosa + complicata!!

Xtefano
12-02-2007, 15.11.57
(Y) Ottimo !
:act: ad entrambi ;)



Byez

Stefano

P8257 WebMaster
12-02-2007, 15.23.24
:)

xmatrix83
12-02-2007, 16.40.55
a scusa ancora, posso ignorare la riga che corrisponde \\server per esempio??

P8257 WebMaster
12-02-2007, 17.03.00
Puoi ignorarle, ma senza farti troppi problemi, mettici >nul dietro alla riga del for così almeno non vedi i messaggi di errore...

LoryOne
12-02-2007, 22.47.40
Per ottenere un aiuto su FOR, basta che digiti:

FOR /?

oppure

FOR /?>C:\HlpFOR.txt

per avere l'intera spiegazione in un file di testo consultabile con calma...

xmatrix83
12-02-2007, 22.56.19
si ma io volevo che proprio il for mi ingorasse \\server, altrimenti spengo anke quello! huhiha

Xtefano
13-02-2007, 09.05.11
si ma io volevo che proprio il for mi ingorasse \\server, altrimenti spengo anke quello! huhiha

Ah, ecco ... mò ho capito qual'era la questione ... :)

(nota: io oggi non vedo più il codice nei post precedenti ... succede solo a me ?)

Comunque sia, per condizionare l'esecuzione di shutdown puoi usare
if /I not %%v==\\SERVER shutdown ....
dove (non mi ricordo come era l'esempio di P8257) %%v è la variabile che contiene il nome del server e /I serve per ignorare maiuscole/minuscole nel confronto.


HTH


Byez

Stefano

xmatrix83
13-02-2007, 09.17.30
grazie sietre mitici! anche io non vedo + il codice precedente!

xmatrix83
13-02-2007, 14.36.09
funziona tutto alla perfezione! grazie ancora!
Certo che i for sui batch sono uno strumento molot potente, solo che non ci capisco niente, hanno una logica tanto strana secondo me!

P8257 WebMaster
13-02-2007, 18.47.01
funziona tutto alla perfezione! grazie ancora!
Certo che i for sui batch sono uno strumento molot potente, solo che non ci capisco niente, hanno una logica tanto strana secondo me!

Vallo a dire a chi fa shell scripting :D ...