Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Telnet su file di batch.

    Dunque, devo spegnere un pc sulla mia lan tramite telnet.
    I comandi che do alla shell di windows son questi:

    telnet 192.168.16.70
    n
    user
    password
    shutdown -s -t 0

    E se li do manualmente tutto ok.
    Se invece mi creo un file .bat con quei comandi preceduti da @echo off, non funziona, in quanto (credo) che li dia tutti assieme senza aspettare la risposta del programma, ed infatti dopo circa 10 secondi msdos mi chiede il comando a cui devo rispondere n. Come fare a far si che non dia tutti i comandi insieme ma attenda la risposta del programma?

    Nicola.
    www.nicolacasini.com

  2. #2
    I file batch non sono l'emulazione di ciò che scrivi da tastiera, ma ordini destinati solo all'interprete del prompt dei comandi, non ad altri programmi a linea di comando che vengono avviati. telnet per il prompt dei comandi è un programma qualsiasi, per cui durante l'esecuzione del file batch esso viene avviato, e il file batch viene messo in pausa, in attesa che telnet termini. Se telnet terminasse, vedresti che "n", "user" e gli altri comandi vengono eseguiti dal prompt dei comandi invece che da telnet.

    Per inciso, per arrestare una macchina Windows da remoto dovresti provare a fare un
    codice:
    net use \\192.168.16.70\ /user:utente password
    shutdown -s -m \\192.168.16.70 -t 0
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Perfetto, grazie.
    Ho provato i comandi che mi hai dato, ma sorge un problema: mi dice che non è possibile connettersi all'host con due nomi utente differenti. Il problema credo sia questo:

    Sul computer da spegnere (WinXP), il 16.70, son attivi 2 account con privilegi di amministratore: Nicola Casini ed Administrator.

    Sul pc locale (Win7) è attivo Nicola Casini come amministratore.
    Se provo ad eseguire il comando con
    codice:
    user:Administrator password
    mi da l'errore prima detto, in quanto credo che si aspetti il nome utente Nicola Casini (stesso per i dischi di rete, ad esempio).

    Se però uso
    codice:
    user:Nicola Casini password
    ovviamente non va perchè prende Casini come password. Che carattere devo usare al posto dello spazio?

    Grazie mille per il supporto,
    Nicola.
    www.nicolacasini.com

  4. #4
    Usa le virgolette.
    codice:
    net use \\quellocheé "/user:Nicola Casini" password
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.