ENG2ITA Community

Progetti utenti ENG2ITA => Installazioni unattended per Windows => Topic aperto da: DMD - 02/03/2009, 12:18

Titolo: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 02/03/2009, 12:18
COMANDI BATCH NECESSARI PER L'UNATTENDED

Con la speranza di renderla più completa, tanto per iniziare a smanettare, elenco una serie di comandi e funzioni da inserire negli script batch.


Nel Prompt dei comandi DOS scrivendo semplicemente "SET" si ottiene una lista di tutte le variabili ambiente col rispettivo valore.



*** WINDOWS XP ***
Microsoft Windows [Versione 5.1.2600]

Variabili d'ambiente o Percorsi di destinazione dei file
%SYSTEMDRIVE% - Indica il percorso di default  C:\
%SYSTEMROOT% -  Indica il percorso C:\WINDOWS
%PROGRAMFILES% - Indica il percorso C:\Programmi
%USERPROFILE% - Indica il percorso C:\Documents and Settings\NOME UTENTE
%ALLUSERSPROFILE% - Indica il percorso C:\Documents and Settings\All Users
%APPDATA% - Indica il percorso C:\ Documents and Settings \NOME UTENTE\AppData\Dati applicazioni

I percorsi del Desktop in Windows XP
%allusersprofile%\Desktop
%systemdrive%\Documents and Settings\Default User\Desktop
%userprofile%\Desktop




** WINDOWS SEVEN **
Microsoft Windows [Versione 6.1.7600]

Variabili d'ambiente o Percorsi di destinazione dei file
%HOMEDRIVE% - Indica il percorso C:
%SYSTEMDRIVE% - Indica il percorso C:
%ALLUSERSPROFILE% - Indica il percorso C:\ProgramData
%PROGRAMDATA% - Indica il percorso C:\ProgramData
%PROGRAMFILES% - Indica il percorso C:\Program Files (solo nei S.O. a 32 bit) oppure C:\Program Files (x86) nei sistemi a 64 bit
"C:\Program Files" - Indica il percorso C:\Program Files (nei S.O. a 32 e 64 bit)
%COMMONPROGRAMFILES% - Indica il percorso C:\Program Files\Common Files (solo nei S.O. a 32 bit)
%HOMEPATH% - Indica il percorso C:\Users\NOME UTENTE
% USERPROFILE% - Indica il percorso C:\Users\NOME UTENTE
%APPDATA% - Indica il percorso C:\Users\NOME UTENTE\AppData\Roaming
%LOCALAPPDATA% - Indica il percorso C:\Users\NOME UTENTE\AppData\Local
%PUBLIC% - Indica il percorso C:\Users\Public
%SYSTEMROOT% - Indica il percorso C:\Windows
%WINDIR% - Indica il percorso C:\Windows
%TEMP% - Indica il percorso C:\Users\NOME UTENTE\AppData\Local\Temp

I percorsi del Desktop in Windows Seven
%userprofile%\Desktop
%public%\Desktop



PROGRAMMI MENU START CARTELLA UTENTE
Digitazione manuale:
C>Utenti>NOME UTENTE>AppData>Roaming>Microsoft>Windows>Menu Start>Programmi
C:\Users\NOME UTENTE\AppData\Roaming\Microsoft\Windows\Start Menu\Programs


PROGRAMMI MENU START CARTELLA TUTTI GLI UTENTI
Digitazione manuale:
C>ProgramData>Microsoft>Windows>Menu Start>Programmi
C:\ProgramData\Microsoft\Windows\Start Menu\Programs





COMANDI UTILIZZATI DI FREQUENTE
 
N.B. Attenzione alla sintassi, alle virgolette ed estensioni nascoste
Si precisa che per i file occorre inserire l’estensione, tipo .exe, .msi etc.
I collegamenti di file che non compaiono è “.lnk”
I collegamenti di indirizzi WEB che non compaiono è “.url” (grazie a Singolarity)

Per ulteriori approfondimenti della riga di comando segnalo questo Link (http://www.ss64.com/nt/)

Inoltre per per sapere le assegnazione delle funzioni dei vari comandi,  si può anche digitare nel prompt del dos il comando seguito da /? Esempio digitiamo  Color /? Oppure Copy /? e ci vengono elencati tutte le opzioni relativo a quello specifico comando.




COLOR
Colore di fondo dello spalsh screen DOS :
sintassi: COLOR [colore sfondo][colore testo]

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F96621001.PNG&hash=ac8b2afe3284727e0afffc539f337f273c6c7fa7) (http://allfreeportal.com)


Esempio di script:
Color 34

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F37157802.PNG&hash=57e593d38cb0a78a440a69bfa59611c3bb6b9cb7) (http://allfreeportal.com)





COPY
Copia uno o più file in un'altra posizione:
COPY [/V] [/N] [/Y | /-Y] [/Z] [/A | /B ] origine [/A | /B]
     [+ origine [/A | /B] [+ ...]] [destinazione [/A | /B]]

  origine       Indica i file da copiare.
  /A            Indica un file di testo ASCII.
  /B            Indica un file binario.
  destinazione  Specifica la directory e/o il nome dei nuovi file.
  /V            Verifica che i nuovi file siano stati copiati correttamente.
  /N            Usa nomi file brevi, se disponibili, durante la copia di file con nome
                lungo.
  /Y            Non chiede la conferma prima di sovrascrivere un file
                di destinazione esistente.
  /-Y           Chiede conferma prima di sovrascrivere un file
                di destinazione esistente.
  /Z            Copia file da rete in modalità riavviabile.

È possibile che nella variabile di ambiente COPYCMD sia preimpostata l'opzione /Y.
Per ignorare questa impostazione, specificare /-Y alla riga di comando.
Per impostazione predefinita la conferma viene richiesta a meno che il comando COPY
non venga eseguito da uno script di tipo batch.

Per concatenare i file, specificare un solo file di destinazione e più file
di origine (usando caratteri jolly o il formato file1+file2+file3).


Esempio si vuole copiare la cartella PROVA e il suo contenuto.
da C:\Documents and Settings\UTENTE\Menu Avvio a C:\Documents and Settings\All Users\Menu Avvio

COPY "%USERPROFILE%\Menu Avvio\Prova.exe" "%ALLUSERSPROFILE%\Menu Avvio\Prova.exe" /Y





DEL
Cancellare file :
DEL o  ERASE
Sintassi:
DEL [/P] [/F] [/S] [/Q] [/A[[:]attributi]] nomefile
ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributi]] nomefile

Il comando MS-DOS del ed il comando MS-DOS erase eliminano i file specificati.
Opzioni:
nomefile Specifica un elenco di uno o piu' file o directory. Usare i caratteri jolly per eliminare piu' file. Specificando una directory, tutti i file al suo interno saranno eliminati.

/P Chiede conferma prima di eliminare ogni file.
/F Forza l'eliminazione dei file di sola lettura.
/S Elimina i file specificati da tutte le sottodirectory.
/Q Modalita' silenziosa, non chiede conferma per eliminazioni globali.
/A Seleziona i file da eliminare in base agli attributi, forza eliminazione file nascosti

attributi:
R File di sola lettura
S File di sistema
H File nascosti
A File di archivio
- Prefisso per negare l'attributo

Se le estensioni ai comandi sono abilitate, DEL e ERASE saranno modificati come segue:
la semantica di visualizzazione del'opzione /S viene modificata e vengono mostrati solo
i file che vengono eliminati, non quelli che e' impossibile trovare.


Esempio si vuole eliminare il file WgaLogon.off nel percorso:
C:\WINDOWS\system32
DEL "%SYSTEMROOT%\system32\WgaLogon.off" /f /a

Cancellare tutti i collegamenti sul desktop (dato che gli accessi al deskop sono tre)
del "%allusersprofile%\Desktop\*.lnk"
del "%systemdrive%\Documents and Settings\Default User\Desktop\*.lnk"
del "%userprofile%\Desktop\*.lnk"





GOTO
Comando  vai a… :
Dirige cmd.exe ad una riga etichettata in un programma batch.

GOTO etichetta

etichetta    Specifica una stringa usata nel programma batch come etichetta.

Le etichette devono cominciare con due punti e terminare con ritorno a capo.

Se le estensioni dei comandi sono attivate, il comando GOTO verrà modificato
come segue:

Il comando GOTO accetta l'etichetta di destinazione :EOF, che trasferisce
il controllo alla fine del file script batch corrente. Ciò consente di uscire
da un file script batch senza definire un'etichetta. Digitare CALL /? per
una descrizione delle estensioni del comando CALL che sfruttano questa
funzionalità.



In genere si utilizza unitamente al comando IF per specificare una determinata condizione se verificata allora vai a….

Esempio

If exist "%allusersprofile%\Microsoft\Windows\Start Menu\Programs\myprogram" goto w7
If exist "%allusersprofile%\Menu Avvio\Programmi\myprogram" goto wxp

:w7
move "%programfiles%\my program\myguida.lnk” "%allusersprofile%\Microsoft\Windows\Start Menu\Programs\myprogram\myguida.lnk”
exit

:wxp
move "%programfiles%\my program\myguida.lnk” "%allusersprofile%\Menu Avvio\Programmi\myprogram\myguida.lnk”
exit






IF
Comando di condizione (SE):
Esegue un'elaborazione condizionale in programmi batch.

IF [NOT] ERRORLEVEL numero comando
IF [NOT] stringa1==stringa2 comando
IF [NOT] EXIST nomefile comando

  NOT                 Specifica che Windows dovrebbe eseguire
                      il comando solo se la condizione è falsa.

  ERRORLEVEL numero   Specifica una condizione vera se l'ultimo
                      programma eseguito ha restituito un codice
                      di uscita uguale o maggiore del numero
                      specificato.

  stringa1==stringa2  Specifica una condizione vera se le
                      stringhe di testo specificate corrispondono.

  EXIST nomefile      Specifica una condizione vera se il nomefile
                      specificato esiste.

  comando             Specifica il comando da eseguire se la
                      condizione è soddisfatta. Il comando può
                      essere seguito dal comando ELSE che eseguirà


Esempio 1

@echo off
:inizio
cls
Color 4f
echo ==========================================
echo  Installazione software RunOnceEX
echo ==========================================
echo.
set /p var=Questa applicazione prevede il riavvio vuoi continuare? (S/N):

if %var% == S goto install
if %var% == s goto install
if %var% == N goto exit
if %var% == n goto exit
goto inizio

:install
cls
echo ==========================================
echo  Installazione software RunOnceEX
echo ==========================================
echo.
echo             Attendere...
regedit /S chiave_RunOceEX.reg
start /wait $OEM$\RunOnceEx.cmd
shutdown -r -f -t 0

:exit
Exit




Esempio 2

@Echo Off
Color 4f
Echo.
Echo  The Blu-ray region reset.
Echo.
Title Blu-Ray Region Reset for PowerDVD 9
TaskKill /F /IM PowerDVD9.exe /FI "STATUS eq RUNNING" > nul
TaskKill /F /IM brs.exe /FI "STATUS eq RUNNING" > nul
If exist "%AllUsersProfile%\Application Data\Cyberlink\BDNAV\BRF.dat" del /F /Q /A:H "%AllUsersProfile%\Application Data\Cyberlink\BDNAV\BRF.dat"
If exist "%ProgramData%\Cyberlink\BDNAV\BRF.dat" del /F /Q /A:H "%ProgramData%\Cyberlink\BDNAV\BRF.dat"
Echo.
Echo  Premi un tasto per uscire . . .
Pause > nul
Color
Exit






IPCONFIG
Configure IP (internet protocol configuration) :

Syntax

  IPCONFIG /all        
  Visualizzazione completa le informazioni di configurazione.

  IPCONFIG /release [adapter]
  Liberi l'indirizzo IP per la scheda specificata.

  IPCONFIG /renew [adapter]
  Rinnova l'indirizzo IP per la scheda specificata.
  
  IPCONFIG /flushdns    
  Eliminare la cache del resolver DNS.
 
  IPCONFIG /registerdns
  Aggiorna tutte le locazioni DHCP e ri-registrare i nomi DNS.

  IPCONFIG /displaydns  
  Visualizzare il contenuto della cache del resolver DNS.

 IPCONFIG /showclassid adapter
  Mostra tutti gli ID di classe DHCP consentiti per la scheda.

  IPCONFIG /setclassid  adapter [classid]
  Modificare l'ID classe DHCP.

Se l'adattatore nome contiene spazi, utilizzare le virgolette: "Nome scheda"
i caratteri jolly * e? permessi, vedere gli esempi qui di seguito
Il valore predefinito è di visualizzare solo l'indirizzo IP, subnet mask e gateway predefinito per ciascuna scheda vincolati a TCP / IP.
Per Release e Renew, se non viene specificato il nome della scheda, quindi l'indirizzo IP di locazione per tutte le schede vincolati a TCP / IP sarà rilasciato o rinnovato.
Per Setclassid, ClassID se non è specificata, allora il ClassID viene eliminato.

Examples:
    > ipconfig                      ... Visualizza informazioni.
    > ipconfig /all                 ... Visualizza informazioni dettagliate
    > ipconfig /renew          ... rinnovare tutte le schede
     > ipconfig /renew EL*    ... rinnovare ogni connessione che ha il suo nome inizia con EL
    > ipconfig /release *Con*    ... liberazione di tutti i collegamenti corrispondenti, eg. "Local Area Connection 1" or "Local Area Connection 2"
    > ipconfig /setclassid "Local Area Connection" TEST  .. impostare l'ID di classe DHCP per il della scheda a = test


Esempi comuni:
Disattivare le connessioni= ipconfig /release *Con*
Riattivare  le connessioni=  ipconfig /renew





MD
Creare una cartella :

Md oppure MKDIR
Il comando md crea una directory.
Sintassi:
MKDIR [unita':]percorso
MD [unita':]percorso

Se le estensioni ai comandi sono abilitate, MKDIR cambia come segue:
MKDIR crea le directory intermedie nel percorso, se necessario.
Per esempio, ipotizzando che \a non esiste, allora:
mkdir \a\b\c\d
e' analogo a:
mkdir \a
chdir \a
mkdir b
chdir b
mkdir c
chdir c
mkdir d
che rappresenta cio' che si deve digitare con le estensioni disabilitate.


Esempio si vuole creare la cartella UTILITY EXTRA nel percorso:
C:\Documents and Settings\All Users\Menu Avvio\Programmi\Accessori
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Accessori\UTILITY EXTRA"






MOVE
Spostare un file :

Per spostare uno o più file:
MOVE [/Y | /-Y] [unità:][percorso]nomefile1[,...] destinazione

Per rinominare una directory:
MOVE [/Y | /-Y] [unità:][percorso]nomedir1 nomedir2

  [unità:][percorso]nomefile1  Specifica la posizione e il nome
                               del o dei file da spostare.
  destinazione                 Specifica la nuova posizione del file.
                               La destinazione può essere una lettera di unità
                               e due punti, un nome di directory o una combinazione.
                               Se si sposta solo un file, è possibile includere
                               un nome file se si desidera rinominare il file
                               mentre lo si sposta.
  [unità:][percorso]nomedir1   Specifica la directory da rinominare.
  nomedir2                     Specifica il nuovo nome della directory.

  /Y                           Non chiede la conferma prima di sovrascrivere
                               un file di destinazione esistente.
  /-Y                          Chiede conferma prima di sovrascrivere un file
                               di destinazione esistente.

È possibile che nella variabile di ambiente COPYCMD sia preimpostata l'opzione /Y.
Per ignorare questa impostazione, specificare /-Y alla riga di comando.
Per impostazione predefinita la conferma viene richiesta a meno che il comando
MOVE non venga eseguito da uno script di tipo batch.


Esempio si vuole spostare la cartella PROVA dal percorso:
C:\Documents and Settings\UTENTE\Menu Avvio
C:\Documents and Settings\All Users\Menu Avvio
MOVE "%ALLUSERSPROFILE%\Menu Avvio\PROVA" "%ALLUSERSPROFILE%\Menu Avvio\PROVA"





PAUSE
Premere un tasto per continuare :

Se si desidera non eseguire in modo automatico una procedura, ma vogliamo avviarla a comando, allora occorre il comando :
pause

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F92988303.PNG&hash=8175718de3e0d531d6dd9f629e9dd1d443353a67) (http://allfreeportal.com)





RD
Cancellare una cartella :

Il comando rd rimuove (elimina) una directory.
Sintassi:
RMDIR [/S] [/Q] [unita':]percorso
RD [/S] [/Q] [unita':]percorso
Opzioni:
/S Rimuove tutte le directory e file nella directory specificata oltre alla directory stessa. Usato per rimuovere l'intera struttura di una directory.
/Q Inibisce la richiesta di conferma alla rimozione della directory eseguita con /S


Esempio si vuole eliminare la cartella GRAFICA nel percorso:
C:\Documents and Settings\UTENTE\Menu Avvio\Programmi
RD "%USERPROFILE%\Menu Avvio\Programmi\GRAFICA"

Si precisa che la cartella per essere eliminata deve essere vuota.

Se si vuole eliminare la cartella con tutto il suo contenuto di file e sottocartelle, occorre inserire i parametri /s /q
RD "%USERPROFILE%\Menu Avvio\Programmi\GRAFICA"  /s /q






REGEDIT
Chiavi di registro:

Eseguire una chiave di registro :
Esempio si vuole eseguire una chiave di registro con nome “prova”
regedit /S prova.reg    


IMPORTANTE*
il nome non deve essere composto da caratteri accentati o strani, pena la non esecuzione della chiave
Esempio:  Avvio_più_veloce.reg va corretto in Avvio_veloce.reg


Aggiungere una chiave di registro assegnando un valore DWORD
Questa è la key.reg
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\CyberLink\PowerDVD10]
"UIASKMouseDlgInBDJ"=dword:00000000

Questo è lo script bath per modifica valore DWORD
Reg Add HKCU\Software\Cyberlink\PowerDVD10 /v UIASKMouseDlgInBDJ /t REG_DWORD /d 0 /f > nul


Aggiungere una chiave di registro assegnando un valore STRINGA
Questa è la key.reg
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\CyberLink\PowerDVD10]
"UISkinPath"="AtmosphericMKII.dll"

Questo è lo script bath per modifica valore STRINGA
REG ADD "HKCU\Software\CyberLink\PowerDVD10" /v "UISkinPath" /d "AtmosphericMKII.dll" /f

Oppure: (grazie a Cra$h (http://www.eng2ita.net/forum/index.php/topic,5693.msg55964.html#msg55964))

reg add HKCU\Software\CyberLink\PowerDVD10 /v "UISkinPath" /t REG_SZ /d "AtmosphericMKII.dll" /f


/t =tipo                                se omesso viene assunto REG_SZ
REG_SZ = valore stringa
REG_BINARY = Valore binario
REG_DWORD = Valore DWORD
REG_MULTI_SZ = Valore multistringa
REG_EXPAND_SZ = Valore stringa espandibile




Eliminare una chiave di registro :
Esempio si vuole eliminare la chiave WgaLogon:
REG DELETE "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\WgaLogon" /f

Nel dettaglio
REG DELETE <chiave di registro> /v <nomevalore> /f
/v permette di specificare una particolare chiave da cancellare
/f permette di bypassare la conferma di cancellazione.
REG DELETE HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName /v TWGMachineID /f

Altro esempio
@ECHO Off
REG DELETE HKLM\Software\quello_che_ti pare

Occhio però, se nel percorso ci sono degli spazi, devi racchiudere il tutto tra virgolette:

REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\App Management"

RegCreateKey :crea ed apre una nuova sottochiave della chiave indicata.

RegOpenKeyEx : effettua l'apertura di una chiave o di una sua sottochiave

RegSetValueEx : modifica il contenuto di un valore esistente e crea un nuovo valore nel caso che esso non dovesse esistere, con il tipo di dati specificato.

RegDeleteKey : elimina una chiave e tutte le sue sottochiavi ed i relativi valori.

RegQueryValueEx : interroga un valore di cui si conosce il nome ottenendo in risposta il suo contenuto ed il suo tipo di dati.

RegCloseKey : chiude una chiave precedentemente aperta .



Altre info su REG.exe
Read, Set or Delete registry keys and values, save and restore from a .REG file.
Syntax:

   REG QUERY [ROOT\]RegKey /v ValueName [/s]
   REG QUERY [ROOT\]RegKey /ve  --This returns the (default) value
  
   REG ADD [ROOT\]RegKey /v ValueName [/t DataType] [/S Separator] [/d Data] [/f]
   REG ADD [ROOT\]RegKey /ve [/d Data] [/f]  -- Set the (default) value

   REG DELETE [ROOT\]RegKey /v ValueName [/f]
   REG DELETE [ROOT\]RegKey /ve [/f]  -- Remove the (default) value
   REG DELETE [ROOT\]RegKey /va [/f]  -- Delete all values under this key

   REG COPY  [\\SourceMachine\][ROOT\]RegKey [\\DestMachine\][ROOT\]RegKey

   REG EXPORT [ROOT\]RegKey FileName.reg
   REG IMPORT FileName.reg
   REG SAVE [ROOT\]RegKey FileName.hiv
   REG RESTORE \\MachineName\[ROOT]\KeyName FileName.hiv
  
   REG LOAD FileName KeyName
   REG UNLOAD KeyName
  
   REG COMPARE [ROOT\]RegKey [ROOT\]RegKey [/v ValueName] [Output] [/s]
   REG COMPARE [ROOT\]RegKey [ROOT\]RegKey [/ve] [Output] [/s]

Key:
   ROOT :
         HKLM = HKey_Local_machine (default)
         HKCU = HKey_current_user
         HKU  = HKey_users
         HKCR = HKey_classes_root

   ValueName : The value, under the selected RegKey, to edit.
               (default is all keys and values)

   /d Data   : The actual data to store as a "String", integer etc
/f        : Force an update without prompting "Value exists, overwrite Y/N"
\\Machine : Name of remote machine - omitting defaults to current machine.
                Only HKLM and HKU are available on remote machines.

   FileName  : The filename to save or restore a registry hive.
 KeyName   : A key name to load a hive file into. (Creating a new key)
/S        : Query all subkeys and values.
  /S Separator : Character to use as the separator in REG_MULTI_SZ values
                  the default is "\0"
  /t DataType  : REG_SZ (default) | REG_DWORD | REG_EXPAND_SZ | REG_MULTI_SZ
   Output    : /od (only differences) /os (only matches) /oa (all) /on (no output)






REGSVR32
Registrare  o  De-registrare dei componenti  o dll:

La sintassi è la seguente: regsvr32 [/u] [/s] [/n] [/i[:cmdline]] nomedll
I parametri:
/u  Annulla la registrazione del server.
/s  Specifica di eseguire regsvr32 automaticamente senza visualizzare alcun messaggio.
/n  Specifica di non chiamare DllRegisterServer È necessario utilizzare questa opzione con /i.
/i:cmdline
Chiama DllInstall passando una [cmdline] facoltativa. Se utilizzata con /u, chiamerà dll uninstall.
nomedll Specifica il nome del file dll che verrà registrato.
/? Visualizza informazioni della Guida al prompt dei comandi.


Esempio si vuole registrare dei codec nVidia (nvviddec.ax) residenti nel percorso.
C:\Programmi\TheaterTek\TheaterTek DVD 2.0\Filters

regsvr32 /s "%programfiles%\TheaterTek\TheaterTek DVD 2.0\Filters\nvviddec.ax"
/s non visualizza finestre di messaggio

Esempio si vuole de-registrare dei codec nVidia (nvviddec.ax) residenti nel percorso.
C:\Programmi\TheaterTek\TheaterTek DVD 2.0\Filters

regsvr32 /u /s "%programfiles%\TheaterTek\TheaterTek DVD 2.0\Filters\nvviddec.ax"
/u indica la de-registrazione del file o del codec
/s non visualizza finestre di messaggio





REN
Rinominare un file :

Il comando ren (rename) rinomina uno o piu' file.
Sintassi:
RENAME [unita':][percorso]nomefile1 nomefile2.
REN [unita':][percorso]nomefile1 nomefile2.


Esempio da WgaLogon.dll a WgaLogon.off nel percorso:
C:\WINDOWS\system32
REN "%SYSTEMROOT%\system32\WgaLogon.dll" "WgaLogon.off"






SHUTDOWN
Arresto o Riavvio del PC :

Specifiche dei parametri
-i : attiva l’interfaccia utente grafica
-l : effettua il logoff dell’utente.
-r : riavvia il sistema
-s : chiude la sessione di Windows (spegne il computer)
-t xx : xx indica i secondi di attesa prima della chiusura di Windows
-f : chiude le applicazioni ancora aperte
-c "Testo": messaggio testuale opzionale, massimo 120 caratteri




ARRESTO
shutdown -f -t xx -s
xx  indica il tempo in secondi che impiegherà per spegnersi
esempio vogliamo che il pc si spegni dopo un’ora
shutdown -t 3600 -s

RIAVVIO
shutdown -f -t xx -r
xx  indica il tempo in secondi che impiegherà per riavviarsi

esempio: vogliamo che il pc si riavvii immediatamente
shutdown -f -t 0 -r

esempio: Vogliamo che che il pc si riavvii dopo 60 secondi con messaggio testuale
shutdown –r -f -t 60 –c  "Windows si riavvia tra 1 minuto"

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F196113Senza+titulo-1.png&hash=5bda7824cd05f1d891b560150c0be4851bbce8e2) (http://allfreeportal.com)






START
Esecuzione di un file eseguibile o installer :

Sintassi START [“titolo„] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/WAIT] [/B] [ordine/programma]
[parametri]
“titolo„   Titolo da visualizzare nel titolo della finestra barra
percorso   Iniziare indice
/B   Inizi l'applicazione senza generare una nuova finestra. l'applicazione ha maneggiamento del ^C ignorato. A meno che l'applicazione permette il ^C che procede, ^Break è l'unico senso interrompere l'applicazione
/I   Il nuovo ambiente sarà l'ambiente originale passato al cmd.exe e non all'ambiente corrente
/MIN   Inizi la finestra minimizzata
/MAX   Inizi la finestra elevata
/SEPARATE   Inizi il programma di Windows a 16 bit nello spazio di memoria separato
/SHARED   Inizi il programma di Windows a 16 bit nello spazio di memoria comune
/LOW   Inizi l'applicazione nel codice categoria AL MINIMO di priorità
/NORMAL   Inizi l'applicazione nel codice categoria NORMALE di priorità
/HIGH   Inizi l'applicazione nel codice categoria prioritario
/REALTIME   Inizi l'applicazione nel codice categoria IN TEMPO REALE di priorità
/ABOVENORMAL   Inizi l'applicazione nel codice categoria di priorità di ABOVENORMAL
/BELOWNORMAL   Inizi l'applicazione nel codice categoria di priorità di BELOWNORMAL
/WAIT   Inizi l'applicazione ed aspettila per terminare
ordine/programma   Se allora è un ordine interno del cmd o un file sequenziale il processor di ordine è fatto funzionare con l'interruttore di /K a cmd.exe. Ciò significa che la finestra rimarrà dopo che l'ordine sia stato funzionato.
Se allora non è un ordine del cmd o un file sequenziale interno è un programma e funzionerà come uno a windowed l'applicazione o un'applicazione della sezione comandi.
parametri   Questi sono i parametri passati all'ordine/programma
Se le estensioni di ordine sono permesse, invocation esterno di ordine
attraverso la linea di ordine o i cambiamenti di ordine di INIZIO come segue:
le lime non-executable possono essere invocate con la loro associazione della lima appena scrivendo il nome a macchina della lima come ordine. (per esempio. WORD.DOC lanci l'applicazione connessa con l'estensione di lima di .DOC). Veda gli ordini di FTYPE e di ASSOC per come generare questi
associazioni da parte di uno scritto di ordine.
Nell'eseguire un'applicazione che è un'applicazione del GUI dei 32 bit, CMD.EXE non aspetta l'applicazione per terminare prima del rinvio a
il richiamo di ordine. Questo nuovo comportamento non accade se eseguendo all'interno di uno scritto di ordine.


Esempio, se si vuole eseguire un file nella stessa cartella di allocazione dobbiamo porre attenzione affinchè la sintassi dell’eseguibile sia scritta senza spazi, altrimenti occorre rinominare obbligatoriamente il file aggiungendo eventualmente il trattino basso “_” . Inoltre è possibile aggiungere dei comandi di linea (proprietari del software) come ad esempio l’eliminazione dello splash screen .
start TheaterTek_DVD.exe /NOSPLASH

Se invece vogliamo eseguire un file al di fuori della cartella di allocazione e non vogliamo o non possiamo modificare la sintassi dobbiamo inserire i doppi apici e il percorso tra le virgolette.
start "" "%programfiles%\TheaterTek\TheaterTek DVD 2.0\TheaterTek DVD.exe" /NOSPLASH

Da notare i doppi Apici "" dopo il comando START, altrimenti non funziona la chiamata.
Come segnalato gentilmente da MAX (http://www.eng2ita.net/forum/index.php?action=post;quote=50253;topic=5693.45;num_replies=54;sesc=5f93eacf669f8611a6bde5d6f44d4a63)


Altro caso che si può verificare, è quello di eseguire un file (es. unins000.exe) di disinstallazione sempre al di fuori della cartella di allocazione.
L’esecuzione avviene senza anteporre il comando Start, però sempre inserendo le virgolette.
"%programfiles%\Software Informer\unins000.exe" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-

Per quanto riguarda l’installazione di programmi, va messo il nome dell’installer senza spazi aggiunti,  seguito poi dall’eventuale comando silent. Inoltre se si vuole visualizzare dei messaggi durante l’installazione occorre inserire il comando wait, altrimenti la finestra DOS si chiuderà subito.    
start /wait 01_PowerDVD_8/setup.exe /S





TASKKILL
Arrestare i processi in corso :

Sintassi:  taskkill [calcolatore] di /s [dominio di /u \ utente [parola d'accesso] di /p]] [/fi FilterName] [/pid ProcessID]|[/im ImageName] [/f] [/t]
/s calcolatore   Specifica il nome o il IP address di un calcolatore a distanza (non usi i backslashes). Il difetto è il calcolatore locale.
/u dominio \ utente   Fa funzionare l'ordine con i permessi di cliente dell'utente specificato da User o dal dominio \ utente. Il difetto è i permessi dell'utente entrato corrente sul calcolatore che pubblica l'ordine.
/p parola d'accesso   Specifica la parola d'accesso del cliente dell'utente che è specificato nel parametro di /u.
/fi FilterName   Specifica i tipi di processi per includere dentro o escludere dal termine. Il seguenti sono nomi validi del filtro, operatorie valori.
Nome   Operatori   Valore
Hostname   eq, Ne
Qualsiasi stringa valida.
Condizione   eq, Ne   FUNZIONARE|NON RISPONDENDO
Imagename   eq, Ne   Qualsiasi stringa valida.
PID   eq, Ne, gt, tenente, GE, le
Qualsiasi numero intero positivo valido.
Sessione   eq, Ne, gt, tenente, GE, le   Qualsiasi numero di sessione valido.
Tempo CPU   eq, Ne, gt, tenente, GE, le   Tempo valido nella disposizione di hh: millimetro: ss. Il millimetro ed i parametri degli ss dovrebbero essere fra 0 e 59 e il hh possono essere tutto il valore numerico unsigned valido.
Memusage   eq, Ne, gt, tenente, GE, le   Qualsiasi numero intero valido.
Username   eq, Ne   Qualsiasi nome valido dell'utente ([dominio \] utente).
Servizi   eq, Ne   Qualsiasi stringa valida.
Windowtitle   eq, Ne   Qualsiasi stringa valida.

/pid processID   Specifica l'identificazione di processo del processo da terminare.
/im ImageName   Specifica il nome di immagine del processo da terminare. Usi il metacarattere (*) per specificare tutti i nomi di immagine.
/f   Specifica che il processo validamente è terminato. Questo parametro è ignorato per i processi a distanza; tutti i processi a distanza validamente sono terminati.
/t   Specifica per terminare tutti i processi del bambino con il processo di genitore, conosciuto comunemente come un'uccisione dell'albero.
Esempi
taskkill /f /im notepad.exe
Termina l'operazione aperta del notepad, se aperto.

 
Se si desidera arrestare un determinato processo basta inserire il comando taskkill /IM seguito dall’eseguibile. Esempio vogliamo arrestare la sidebar nel desktop
taskkill /IM sidebar.exe






XCOPY
Copia strutture di directory e file:

Origine XCOPY [destinazione] [/A | /M] [/D[:data]] [/P] [/S [/E]] [/V] [/W]
                             [/C] [/I] [/Q] [/F] [/L] [/H] [/R] [/T] [/U]
                             [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]
                             [/EXCLUDE:file1[+file2][+file3]...]

  origine       Specifica i file da copiare.
  destinazione  Specifica il percorso e/o il nome dei nuovi file.
  /A            Copia solo i file con l'attributo di archivio impostato,
                senza cambiare l'attributo.
  /M            Copia solo i file con l'attributo di archivio impostato
                e disattiva l'attributo.
  /D:m-d-y      Copia i file modificati dopo la data specificata (inclusa).
                Se non è specificata alcuna data, copia solo i file la cui
                ora di origine è più recente rispetto all'ora di destinazione.
  /EXCLUDE:file1[+file2][+file3]...
                Specifica un elenco di file contenenti stringhe. Quando una delle
                stringhe corrisponde a una parte del percorso assoluto del file
                da copiare, il file verrà escluso dalla copia. Ad
                esempio, se si specifica una stringa come \obj\ o .obj verranno
                esclusi rispettivamente tutti i file nella directory obj
                o tutti i file con estensione obj.
  /P            Chiede conferma prima di creare ogni file di destinazione.
  /S            Copia le directory e le sottodirectory, tranne quelle vuote.
  /E            Copia le directory e le sottodirectory, incluse quelle vuote.
                Analogo a /S /E. Questa opzione può essere utilizzata per modificare /T.
  /V            Verifica la dimensione di ogni nuovo file.
  /W            Chiede di premere un tasto prima di iniziare la copia.
  /C            Continua la copia anche in caso di errori.
  /I            Se la destinazione non esiste e la copia riguarda più file,
                si presuppone che la destinazione sia una directory.
  /Q            Non visualizza i nomi dei file durante la copia.
  /F            Visualizza i nomi completi dei file di origine e di destinazione durante la copia.
  /L            Visualizza i file da copiare.
  /H            Copia anche i file nascosti e di sistema.
  /R            Sovrascrive i file di sola lettura.
  /T            Crea la struttura di directory senza copiare i file. Non
                include le directory o le sottodirectory vuote. Specificare /T /E per includere
                le directory e le sottodirectory vuote.
  /U            Copia solo i file già presenti nella destinazione.
  /K            Copia gli attributi. Il comando Xcopy senza opzioni reimposta gli attributi di sola lettura.
  /N            Copia utilizzando i nomi brevi generati.
  /O            Copia le informazioni ACL e di proprietà dei file.
  /X            Copia le impostazioni di controllo dei file (implica /O).
  /Y            Non chiede la conferma prima di sovrascrivere
                un file di destinazione esistente.
  /-Y           Chiede conferma prima di sovrascrivere un file
                di destinazione esistente.
  /Z            Copia file da rete in modalità riavviabile.

È possibile che nella variabile di ambiente COPYCMD sia preimpostata l'opzione /Y.
Per ignorare questa impostazione, specificare /-Y alla riga di comando.



Negli esempi possiamo copiare o tutta la cartella con tutto ilsuo contenuto oppure soltanto il contenuto della cartella:

Copiare la cartella con tutto il suo contenuto:
esempio: si vuole copiare tutta la cartella con tutto il suo contenuto in “C:\Program Files”
XCOPY "myprogram" "%programfiles%\myprogram\" /E /Q /H /R /Y
*Notare lo slash finale \ dentro le virgolette


Copiare solo il contenuto della cartella:
esempio: si vogliono copiare tutti i file dalla cartella “Raccolta dll” nella cartella “System32”
xcopy "Raccolta dll" "%systemroot%\System32" /E /Q /H /R /Y
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 02/03/2009, 12:47
ESEMPI DI SCRIPT

Codice: [Seleziona]
@echo off
echo ==========================================
echo.
echo              Installazione di
echo          Ultra ISO 9.3.3 buid 2685
echo.
echo ==========================================
echo.
echo             ...Attendere...
Color 017
start /wait uiso9_pe.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-
regedit /S license.reg

Codice: [Seleziona]
@echo off
Color 017
echo ==========================================
echo.
echo                   Installazione di
echo      Patch per Windows Media Player 11
echo.
echo ==========================================
echo.
echo.
echo   al termine il computer si riavviera'
echo.
pause
echo.
echo             ...Attendere...
start /wait WindowsMedia11-KB939683-x86-ITA.exe /quiet /norestart
start /wait WindowsMedia11-KB929399-v2-x86-INTL.exe /quiet /norestart
shutdown -f -t 0 -r





Creare un collegamento di un file eseguibile:

Nel caso in esempio è stato preso a riferimento l’utility TCPView for Windows, un file eseguibile a cui è stato applicato un collegamento nel Menu Start>Tutti i programmi, ovviamente poi uno può decidere dove meglio crede la destinazione del collegamento.

Per prima cosa creiamo una cartella principale ed una sottocartella contenente l’eseguibile ed eventuali file di help in  C:\Programmi

Nel caso in esempio  C:\Programmi\TCPView_2.54\TCPWiev

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F31417404.PNG&hash=dda807588adb2df071da90aa7173ba207d215bc7) (http://allfreeportal.com)


Poi con il tx destro creiamo il collegamento dell’eseguibile e verificando il corretto percorso, ed eventualmente  se vogliamo l’esecuzione a finestra ingrandita o normale.

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F85878705.PNG&hash=103db30858c74a7ca5167588a42f51a52902b863) (http://allfreeportal.com)


Apriamo il blocco note e scriviamo lo script batch

Codice: [Seleziona]
@echo off
Color 037
echo ==========================================
echo.
echo              Installazione di
echo.
echo               TCPView V2.54
echo.
echo ==========================================
echo.
echo             ...Attendere...
xcopy "TCPView" "%programfiles%\TCPView\"
md "%allusersprofile%\Menu Avvio\Programmi\TCPView"
move "%programfiles%\TCPView\Tcpview.lnk" "%allusersprofile%\Menu Avvio\Programmi\TCPView\Tcpview.lnk"


salviamo con nome lo script, come “install.bat” all’interno della cartella principale

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F40173806.PNG&hash=234328f18b8fd6f72c10d5e49bb791f2ce91a231) (http://allfreeportal.com)


Adesso si può creare l’eseguibile autoestraente con WinRAR

Procedura dell’autoestrente è questa:
Aggiungi ad un archivio…> Generali>Crea un’archivio autoestraente>Metodo di compressione>Migliore>Avanzati>Modulo Autoestraente>Esegui dopo l’estrazione>install.bat> Modalità>Estrai i file in una cartella temporanea>Nascondi solo il pannello iniziale>Aggiornamento>Estrai e sostituisci i file>Sovrascrivi tutti i file>OK


Collegamento nel Menu start

(https://www.eng2ita.net/forum/proxy.php?request=http%3A%2F%2Fwww.allfreeportal.com%2Fimghost%2Fimages%2F992724Senza+titulo-7.png&hash=b86c048142e28a75a59583231947d7613c8bba0b) (http://allfreeportal.com)



Buon lavoro.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: RAMBO`2 - 02/03/2009, 12:57
ottimo ciò che mi serviva, e il comando per creare un collegamento di un determinato programma?
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 02/03/2009, 13:23
Ma guarda la combinazione, è quello a cui sto dando ancora la caccia. ;D

Credo purtoppo non esiste un comando diretto.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 02/03/2009, 13:32
Per dirne una, si potrebbe risolvere un problema usuale nell'unattended.

In particolar modo per quanto riguarda i software, dopo aver integrato di tutto e di più alla fine dell'installazione si ha una babele di programmi nel menu start ordinati solo alfabeticamente, almeno io, sento il bisogno di un certo "ordine".

Allora si possono creare delle cartelle tematiche in modo da raggruppare i vari programmi.

esempio di creazione cartelle
Codice: [Seleziona]
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Accessori\UTILITY EXTRA"
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\ANTISPYWARE, ANTIVIRUS E FIREWALL"
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\DECRIPTAGGIO AUDIO-VIDEO"
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\GRAFICA"
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\MASTERIZZAZIONE"
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\MULTIMEDIA AUDIO-VIDEO"
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\OFFICE"
MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\PERIFERICHE"

Spostamenti delle cartelle e file installati
Codice: [Seleziona]
REM******** SPOSTAMENTI DA CARTELLA ALL USERS A CARTELLE PREDEFINITE***************


REM--------------------------------------------UTILITY EXTRA------------------------------------------------------------------
MOVE  "%ALLUSERSPROFILE%\Menu Avvio\Programmi\7-Zip"  "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Accessori\UTILITY EXTRA\7-Zip"
MOVE  "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Acronis"  "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Accessori\UTILITY EXTRA\Acronis"
MOVE  "%ALLUSERSPROFILE%\Menu Avvio\Programmi\AutoIt v3"  "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Accessori\UTILITY EXTRA\AutoIt v3"

MOVE  "%USERPROFILE%\Menu Avvio\Programmi\Calcolator Plus.lnk"  "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Accessori\Calcolator Plus.lnk"




Nel frattempo di scoprire come fare per creare un collegamento, mi sono "arrangiato" in questo modo per portare nel Menu start le funzioni semi-nascoste di WIndows

Codice: [Seleziona]
REM                             File di Windows residenti in system32

MD "%ALLUSERSPROFILE%\Menu Avvio\Programmi\Accessori\UTILITY system32"

copy "%systemroot%\system32\dxdiag.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\dxdiag.exe" "Diagnostica DirectX.exe"
copy "%systemroot%\system32\certmgr.msc" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\certmgr.msc" "Certificati di Windows.msc"
copy "%systemroot%\system32\cliconfg.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\cliconfg.exe" "Utilità di rete del Client.exe"
copy "%systemroot%\system32\ddeshare.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\ddeshare.exe" "Condivisioni.exe"
copy "%systemroot%\system32\eventvwr.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\eventvwr.exe" "Visualizzatore eventi.exe"
copy "%systemroot%\system32\fsquirt.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\fsquirt.exe" "Trasferimento guidato file Bluethoot.exe"
copy "%systemroot%\system32\gpedit.msc" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\gpedit.msc" "Criterio gruppo.msc"
copy "%systemroot%\system32\hdwwiz.cpl" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\hdwwiz.cpl" "Installazione guidata Hardware.cpl"
copy "%systemroot%\system32\mmc.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\mmc.exe" "Console1.exe"
copy "%systemroot%\system32\mobsync.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\mobsync.exe" "Sincronizzazione elementi.exe"
copy "%systemroot%\system32\packager.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\packager.exe" "Packager.exe"
copy "%systemroot%\system32\regedt32.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\regedt32.exe" "Editor del Registro di sistema.exe"
copy "%systemroot%\system32\rsop.msc" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\rsop.msc" "Gruppo di criteri risultante.msc"
copy "%systemroot%\system32\secpol.msc" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\secpol.msc" "Impostazioni protezione locale.msc"
copy "%systemroot%\system32\shrpubw.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\shrpubw.exe" "Creazione guidata cartella condivisa.exe"
copy "%systemroot%\system32\sigverif.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\sigverif.exe" "Verifica firma file.exe"
copy "%systemroot%\system32\sysedit.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\sysedit.exe" "Editor di configurazione di sistema.exe"
copy "%systemroot%\system32\syskey.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\syskey.exe" "Protezione del database di account.exe"
copy "%systemroot%\system32\verifier.exe" "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32"
ren "%allusersprofile%\Menu Avvio\Programmi\Accessori\UTILITY system32\verifier.exe" "Driver Verifier Manager.exe"
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 02/03/2009, 17:00
Può servire?

RD /S .................

Rimuove tutte le directory e file nella directory specificata oltre alla directory stessa. Usato per rimuovere l'intera struttura di una directory.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Yza_K - 02/03/2009, 19:06
Citazione
mi sono "arrangiato" in questo modo per portare nel Menu start le funzioni semi-nascoste di WIndows

Bello, pensa che l'ho già copiato per integrarlo nel programma che stiamo realizzando e pensa che l'avevo postato anche in area admin come temp post , che casualità !...
Magari potremmo anche mettere qualche altro .bat ... puo' essere un idea.



Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 03/03/2009, 08:37
Può servire?

RD /S .................

Rimuove tutte le directory e file nella directory specificata oltre alla directory stessa. Usato per rimuovere l'intera struttura di una directory.

Anche se le cartelle non sono vuote?  se è così è ottimo!

Tank
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 03/03/2009, 19:06
Anche se le cartelle non sono vuote?
SI.
Se poi vuoi che sia silent (non richiede conferma della cancellazione) aggiungi /Q -> RD /S /Q
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 03/03/2009, 21:02
Azz. sei una fonte  di comandi, per caso non è che sapresti come creare un collegamento da un file , così tanto per non copiarmi i file completi nel menu start, sopratutto quellli del system32 .


p.s. aggiunti i percorsi di Vista


bye
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Berserk - 03/03/2009, 23:23
Azz. sei una fonte  di comandi, per caso non è che sapresti come creare un collegamento da un file , così tanto per non copiarmi i file completi nel menu start, sopratutto quellli del system32 .

Guarda se questo può tornarti utile http://7zsfx.solta.ru/en/
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 04/03/2009, 21:33
.....per caso non è che sapresti come creare un collegamento da un file....

Guarda se questo fa al caso tuo: Create a windows shortcut (.LNK file) (http://www.ss64.com/nt/shortcut.html) ;)

Poi tutto il sito mi sembra interessante: Command line reference for Windows, Bash, Oracle, and SQL Server (http://www.ss64.com/index.html) ;D ;D ;D
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 04/03/2009, 23:29
Guarda ancora questo..... :P -> Shortcut v1.11 (Shortcut.exe) (http://www.optimumx.com/download/#Shortcut)
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 05/03/2009, 10:50
Guarda ancora questo..... :P -> Shortcut v1.11 (Shortcut.exe) (http://www.optimumx.com/download/#Shortcut)

Sei una vera miniera.

Un sentito  grazie a te e a Berserk.


Intanto sto cercando di aggiungere o migliorare il post (http://www.eng2ita.net/forum/index.php/topic,5693.0.html) se avete altri comandi fatevi avanti.

Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 11/07/2009, 15:38
esiste un comando o qualcosa da lanciare da cmd che mi consenta di fare taglia - incolla di una cartella e di tutto il suo contenuto?

intendo qualcosa come il MOVE per i file
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 11/07/2009, 19:54
Al momento non saprei!  ::)

In effetti utilizzare il doppio comando XCOPY e RD è un pò noioso .

Se è solo per un file ci si  potrebbe anche stare ma se sono molti è veramente seccante utilizzare una doppia procedura.


Un saluto
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 11/07/2009, 20:28
il problema di xcopy è che è un comando di copia...

se devi copiare copiare ad esempio c:\xpcd1 in c:\xpcd2 la procedura richiede qualche minuto

se fai taglia e incolla la procedura è pressochè immediata

ecco... a me servirebbe un comando per il secondo caso
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 11/07/2009, 22:59
Crea un file con estensione .bat (ad es. sposta.bat) così fatto:
Codice: [Seleziona]
xcopy %1 %2 /S /E /I
rd %1 /S /Q
Lancialo quindi così: sposta [dir origine ] [dir destinazione]
 ;)
Ah, il vecchio dos!!!  ;D
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 12/07/2009, 18:55
grazie rainforest :D

è con questo comando i dai verranno spostati nel senso di taglia e incolla o di copia e incolla?

%1 %2 cosa indicano?
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 12/07/2009, 22:32
con questo comando i dai verranno spostati nel senso di taglia e incolla o di copia e incolla?
Il file batch con xcopy copia i file della directory origine nella nuova destinazione, che viene creata se non esiste e la copia riguarda più file; con rd elimina la cartella originale
Citazione
%1 %2 cosa indicano?
Sono variabili utilizzate nei file batch: in questo caso %1 rappresenta la [dir origine] (es. c:\pinco) e %2 la [dir destinazione] (es. f:\pallino)
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 12/07/2009, 23:10
grazie ancora rain
ma se leggi qualche post più su leggerai che so come funziona il comando xcopy...

ma forse è stato un mio problema nell'essermi spiegato male

se si devono copiare molti file da una cartella all'altra si perde troppo tempo

a me serve qualcvosa che taglia e incolla e NON copia e incolla

Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 12/07/2009, 23:47
grazie ancora rain
ma se leggi qualche post più su leggerai che so come funziona il comando xcopy...
ma forse è stato un mio problema nell'essermi spiegato male
se si devono copiare molti file da una cartella all'altra si perde troppo tempo
a me serve qualcvosa che taglia e incolla e NON copia e incolla
:???:
Non capisco: il file batch che ho postato fa quello che tu richiedi; poi mi sembra che l'operazione di taglia e incolla non faccia altro che prima copiare e poi eliminare....
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: kontini - 13/07/2009, 06:32
Se la partizione è la stessa viene cambiato solo l'indirizzo in memoria e non spostato fisicamente il file
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 13/07/2009, 09:01
:???:
Non capisco: il file batch che ho postato fa quello che tu richiedi; poi mi sembra che l'operazione di taglia e incolla non faccia altro che prima copiare e poi eliminare....

mettiamo caso che io ho una cartella contentenente tutti i file del cd di xp
- c:\xpcd e ne voglia spostare il contenuto in c:\xpcd2
- tramite sistema operativo seleziono tutto il contenuto di c:\xpcd tasto destro taglia
- apro la cartella c:\xpcd2 tasto destro incolla
- l'operazione dura una manciata di secondi

se invece utilizzo il comando xcopy perde diversi minuti dal momento che prima deve copiare tutti i file e poi deve cancellarli

la mia domanda rimane sempre la stessa... come aggirare il problema eseguendo il tutto in dos?
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Singolarity - 13/07/2009, 12:39
dal dos 6.0 in su (incluso i vari win9x e NT) il comando "move" esiste....vuoi qualcosa del genere??
http://www.computerhope.com/movehlp.htm
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 13/07/2009, 12:43
no dai... aspetta davvero sto cominciando a pensare che mi spiego male io...  :o

ho scritto all'inizio dei miei quesiti che mi serve un comando come il move però per le cartelle

il comando move va bene per i file li sposta senza copiarli ma facendo un taglia e incolla

ma per le tagliare e incollare cartelle cosa esiste UGUALE a move?
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 13/07/2009, 14:12
in effetti il MOVE che io sappia serve per spostare uno o piu file o rinominare una directory come postato in prima pagina.

Nel frattempo che qualcuno "scovi" un comando diretto per le cartelle ::), penso si debba per forza ricorrere a  combinazioni di più comandi.  :-\



Dato che mi trovo ne approffitto per una cosa...

Devo copiare dei collegamenti web e ho proceduto come dei normali collegamenti aggiungendo l'estensione ".lnk", ma non fuge.

Cambia qualcosa con gli indirizzi web?



Grazie

Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Singolarity - 13/07/2009, 14:24
a me invece viene il dubbio che tu non sappia leggere l'inglese....il che potrebbe anche essere e me ne scuso io che penso sempre a priori che ormai un poco almeno in lettura lo si capisca tutti anche solo scolasticamente....dunque....il comando move se usato con i file esegue lo spostamento di questi (che come ha già detto kontini nel caso i file siano sulla medesima partizione viene solo cambiata la FAT e non avviene una copia fisica e cancellazione...ma se invece i file devono essere spostati in altre partizioni o dischi allora avviene la copia e poi cancellazione automatica dell'originale)....se usato invece con delle cartelle non fa spostamento ma fa un banale rename della dir...nel tuo caso penso vada bene cmq...tu dici che devi spostare il contenuto della dir \xpcd in \xpcd2 ....non ti cambia nulla se invece usando sempre il move fai un rename della \xpcd in \xpcd2.....a meno che non ti serva dopo ancora la vecchia dir \xpcd questo lo saprai te...ma in tale caso si ritorna al comando copy/xcopy.

Dal link che ti avevo dato:
Citazione
Syntax

Moves files and renames files and directories.

To move one or more files:
MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination

To rename a directory:
MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2
dove dice to rename a directory.....quindi ti basta fare un move /Y c:\xpcd c:\xpcd2

@DMD
mi spieghi la differenza tra spostare contenuti da una cartella ad un'altra volendo appunto cancellare l'originale e fare un semplice rename della cartella originale??? sai se ci pensi il risultato finale è il medesimo.

Cmq venendo anche al tuo problema.
Citazione
Devo copiare dei collegamenti web e ho proceduto come dei normali collegamenti aggiungendo l'estensione ".lnk", ma non fuge.

Cambia qualcosa con gli indirizzi web?
prima di tutto setta nelle option dei file la visualizzazione anche delle estensioni....in realtà i file con collegamento web hanno già una estensione che è .url ....i .lnk sono invece riservati ai collegamenti di file o cartelle e rimangono invisibili a explorer anche con l'option visualizza tutte le estensioni attivata, credo per il fatto che si tratta di estensioni speciali...ma con un file manager terzo si vede la loro estensione in modo normale come per ogni file. Ma ripeto nel tuo caso per i collegamenti web l'estensione è .url e ce l'hanno già ma probabilmente è explorer che non te la mostra...usa freecommander o qualsiasi altro file manager terzo.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 13/07/2009, 14:58
Singolarity mi ha preceduto con una risposta più che esauriente, quindi per spostare nella stessa partizione:

move /Y c:\xpcd xpcd2

per spostare in un'altra partizione:

sposta.bat [dir origine ] [dir destinazione]

sposta.bat
Codice: [Seleziona]
xcopy %1 %2 /S /E /I
rd %1 /S /Q

 ;) ;D
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 13/07/2009, 15:17
mi spieghi la differenza tra spostare contenuti da una cartella ad un'altra .............
In effetti alla fine si giunge alla stessa conclusione , ma credo che rio volesse un solo comando diretto (che non conosco) , questo è quello che ho capito.

Comunque come si dice tutte le strade portano a Roma...


..Cmq venendo anche al tuo problema.prima di tutto setta nelle option dei file la visualizzazione anche delle estensioni....in realtà i file con collegamento web hanno già una estensione che è .url .........
Ti ringrazio per l'info era questa appunto l'estensione nascosta dei collegamenti web,  grazie anche per l'info dei tool file manager.

Ho messo un'appunto anche in prima pagina, in modo che possa ricordamene  ;D


Un saluto
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Singolarity - 13/07/2009, 16:02
Citazione
In effetti alla fine si giunge alla stessa conclusione , ma credo che rio volesse un solo comando diretto
move è un unico comando ne vedi due??

rainforest ha ragione per le cartelle è valido solo se si rimane sempre nella medesima partizione infatti la sintassi del comando dice:
MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2
in pratica replica il drive solo la prima volta e se lo si fa nella seconda deve essere il medesimo altrimenti da accesso negato e non fa nulla.....non mi ero mai reso conto di tale limitazione del comando move....chissà se sulla powershell lo hanno ampliato...ci devo dare un occhio.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 13/07/2009, 17:49
grazie a tutti e scusate davvero per la mia mancanza di comprendonio  :-[

sono davvero mortificato: per farmi perdonare vi faccio un'altra domanda  :ashamed:

mi si èpresentato un nuovo enigma: è possibile fare in modo che vengano spostati tutti i file e le cartelle ad esclusione di un file e una cartella?
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 16/07/2009, 20:58
Vorresti fare uno spostamento di gruppo ad esclusione di alcuni file e cartelle?

Sinceramente non ho mai provato, però dalle note  in mio possesso pare che uno o più file si possono spostare, e ovviamente basta non indicare quelli che non vuoi spostare. !

Codice: [Seleziona]
Per spostare uno o più file:
MOVE [/Y | /-Y] [unità:][percorso]nomefile1[,...] destinazione

Per rinominare una directory:
MOVE [/Y | /-Y] [unità:][percorso]nomedir1 nomedir2

  [unità:][percorso]nomefile1  Specifica la posizione e il nome
                               del o dei file da spostare.
  destinazione                 Specifica la nuova posizione del file.
                               La destinazione può essere una lettera di unità
                               e due punti, un nome di directory o una combinazione.
                               Se si sposta solo un file, è possibile includere
                               un nome file se si desidera rinominare il file
                               mentre lo si sposta.
  [unità:][percorso]nomedir1   Specifica la directory da rinominare.
  nomedir2                     Specifica il nuovo nome della directory.

  /Y                           Non chiede la conferma prima di sovrascrivere
                               un file di destinazione esistente.
  /-Y                          Chiede conferma prima di sovrascrivere un file
                               di destinazione esistente.

È possibile che nella variabile di ambiente COPYCMD sia preimpostata l'opzione /Y.
Per ignorare questa impostazione, specificare /-Y alla riga di comando.
Per impostazione predefinita la conferma viene richiesta a meno che il comando
MOVE non venga eseguito da uno script di tipo batch.


Un saluto



Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 16/07/2009, 21:23
mi si èpresentato un nuovo enigma: è possibile fare in modo che vengano spostati tutti i file e le cartelle ad esclusione di un file e una cartella?

Ti indico come copiare escludendo file e/o directory :P

xcopy [dir origine] [dir destinazione] /S /E /I /EXCLUDE:[dir]\lista.txt

dove lista.txt è l'elenco dei file/directory da escludere, ad es. così fatto:

Codice: [Seleziona]
G:\XPCD\I386\SVCPACK\
G:\XPCD\I386\WIN9XMIG\ACROBAT\
G:\XPCD\VALUEADD\
.AC_
.DLL

(.AC_  ->  indica tutti i file con estensione .AC_, .DLL quelli con est. .DLL, ecc.)

XCOPY ;)
Copia i file e le strutture di directory.

XCOPY source [destinazione] [/A | /M] [/D[:data]] [/P] [/S [/E]] [/V] [/W]
                           [/C] [/I] [/Q] [/F] [/L] [/H] [/R] [/T] [/U]
                           [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]
                           [/EXCLUDE:file1[+file2][+file3]...]

  source       Specifica i file da copiare.
  .....
  /EXCLUDE:file1[+file2][+file3]...
               Specifica un elenco di file contenenti stringhe. Ogni stringa
               deve essere posizionata in una riga differente nei file. Quando
               una delle stringhe corrisponde a una qualsiasi parte del
               percorso assoluto del file da copiare, il file sarà escluso
               dalla copia.  Per esempio, specificando una stringa come
               \obj\ o .obj saranno esclusi tutti i file al di sotto della
               directory obj o tutti i file con estensione .obj.

  .....
  /Z           Copia file da rete in modalità riavviabile.


P.S. verycool: lista.txt si può anche scrivere:
Codice: [Seleziona]
\I386\SVCPACK\
\I386\WIN9XMIG\ACROBAT\
\VALUEADD\
.AC_
.DLL
oppure
Codice: [Seleziona]
\SVCPACK\
\ACROBAT\
\VALUEADD\
.AC_
.DLL

P.P.S.: non usarlo nello sposta.bat, pena la perdita dei file non spostati! :surprise:
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 07/08/2009, 10:56
Chiedo conferma per bloccare il collegamento internet.

Ho provato questo comando , ma non riesco a distattivare.

taskkill /f /im explorer.exe

E' corretto?


Tankiu
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: softinformatica - 07/08/2009, 11:27
Chiedo conferma per bloccare il collegamento internet.

Ho provato questo comando , ma non riesco a distattivare.

taskkill /f /im explorer.exe

E' corretto?


Tankiu


Forse dico una sciochhezza... Collegamento ad internet con interfaccia lan? Io utilizzavo il comando ipconfig /release per bloccare e ipconfig /renew per riattivarlo
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 04/10/2009, 09:42
Domandina..

Devo puntare, tramite lo script batch, ad un eseguibile che risiede sotto C:\Program Files, però non funge o meglio ci sarebbe un'errore di sintassi ma non riesco a capire dove sia.

In particolarmodo devo puntare ad un unistaller

start/wait %programfiles%\Software Informer\unins000.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-

essendo che nel nome del percorso ci sono degli spazi ho messo le virgolette

start/wait "%programfiles%\Software Informer\unins000.exe" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-

Ma non funge ancora, dove mi perdo?

HO RISOLTO!!
anche all'aiuto di Softinformatica

Sintassi corretta:
Codice: [Seleziona]
"%programfiles%\Software Informer\unins000.exe" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-
non vuole ne Start e ne /wait boh!
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 27/02/2010, 21:04
Scusate, sono andato in palla o ci perdo in qualche cosa.

Non riesco ad attivare il lancio di una qualsiasi eseguibile, sotto Windows 7 tramite script, eppure la sintassi è corretta, questo è l'esempio

START "%programfiles%\CCleaner\CCleaner.exe"


Aiutino
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 27/02/2010, 21:34
START "%programfiles%\CCleaner\CCleaner.exe"

Scusa se non c'entra forse con quello che chiedi, ma in XP un comando tipo "%programfiles%\CCleaner\CCleaner.exe" funziona.

Ciao
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 27/02/2010, 23:26
Grazie per la risposta.

Infatti ho notato anche io che questo script diretto funziona, ma il comando START che non funziona come "lancio" diretto degli eseguibili.

Questo  comporatmento non lo capisco, boh!
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 28/02/2010, 10:31
ho tutti i privilegi e sono l'unico amministratore.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Max - 28/02/2010, 11:49
Ho provato il tuo comando START con il prompt dei comandi di XP, e non funziona.

Impostando questo invece non ho problemi:

Codice: [Seleziona]
START "" "%programfiles%\CCleaner\CCleaner.exe"
Ho letto che la Microsoft consiglia di includere sempre i doppi apici del titolo.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 28/02/2010, 12:23
max il comando che hai scritto tu va bene anche per XP?

Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: dkdk_it - 28/02/2010, 13:16
max il comando che hai scritto tu va bene anche per XP?

Si... va bene anche su XP.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 28/02/2010, 13:55
GRAZIE PER LE DELUCIDAZIONI!

Meglio aggiornare il post per via degli apici "", per evitare altri sbattimenti in futuro.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: rainforest - 28/02/2010, 15:25
start "" "%programfiles%\"TheaterTek\TheaterTek DVD 2.0\TheaterTek DVD.exe" /NOSPLASH

Il " prima di TheaterTek non è necessario.

Ciao
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 28/02/2010, 15:47
hoops! mi è scappato un'apice in più  ::)

Grazie!
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: riosilente - 22/06/2010, 10:14
non so se è il posto giusto dove fare questa richiesta però sempre di batch si tratta!

ecco lo scenario:

ci sono 10 pc con xp,vista o 7
su tutti e 10 bisogna avviare ogni 45 giorni un file bat non ad orari prestabiliti e possibilmente con scarto di qualche giorno non essendo certi che in quel dato momento il pc sia acceso

ho provato con il comando schtasks ma mi chiede il nome utente e la password per essere avviato una volta creato

i pc non fanno parte di un dominio o di una rete e hanno tutti nomi diversi

quindi quello che mi servirebbe è una specie di operazioni pianificata indipendente dal nome e che vada bene su ogni configurazione

c'è modo di fare una cosa del genere?
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 14/03/2011, 13:36
Buon giorno.

Non riesco ad aggiungere una key reg con lo script bat, con il comando REGG ADD, in quanto non ho trovato la corretta sintassi. In particolar modo se devo inserire un valore di STRINGA, come si fà ?

Questa è l'esempio di key.reg
Codice: [Seleziona]
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\CyberLink\PowerDVD10]
"UISkinPath"="AtmosphericMKII.dll"


GRAZIE
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Cra$h - 15/03/2011, 15:22
Buon giorno.

Non riesco ad aggiungere una key reg con lo script bat, con il comando REGG ADD, in quanto non ho trovato la corretta sintassi. In particolar modo se devo inserire un valore di STRINGA, come si fà ?

Questa è l'esempio di key.reg
Codice: [Seleziona]
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\CyberLink\PowerDVD10]
"UISkinPath"="AtmosphericMKII.dll"


GRAZIE

reg add HKCU\Software\CyberLink\PowerDVD10 /v "UISkinPath" /t REG_SZ /d "AtmosphericMKII.dll" /f

/t =tipo                                se omesso viene assunto REG_SZ
REG_SZ = valore stringa
REG_BINARY = Valore binario
REG_DWORD = Valore DWORD
REG_MULTI_SZ = Valore multistringa
REG_EXPAND_SZ = Valore stringa espandibile
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 15/03/2011, 15:31
Ringrazio per la lezione in merito  :)

Molto utile, l'annnoterò e citerò nel topic.

Grazie.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: redribbon - 09/05/2011, 01:48
Ho provato il tuo comando START con il prompt dei comandi di XP, e non funziona.

Impostando questo invece non ho problemi:

Codice: [Seleziona]
START "" "%programfiles%\CCleaner\CCleaner.exe"
Ho letto che la Microsoft consiglia di includere sempre i doppi apici del titolo.


ragazzi, devo dire che sono lieto di vedere altri utenti occuparsi e dare pure informazioni sui comandi dei file bat, in particolare questo non lo conoscevo, ma usavo invece questo:
(esempio per far partire il kaspersky in linea di comando)
start /wait /b /D"%ProgramFiles%\Kaspersky Lab\Kaspersky Internet Security 2011\" .\avp.com

cioè, il parametro /D seguito dal percorso dell'eseguibile tra virgolette e l'eseguibile staccato (con eventuali parametri) , col /D serve anche il /b.
in particolare, in seven in modalità audit ho notato che il modo migliore per puntare alla cartella programmi è usare la variabile "%programFiles%" che però ha uno spazio in mezzo, quindi avevo iniziato ad usare la sinstassi "%systemdrive%\programmi\" che va bene nella fase oobe, ma in audit dà problemi, sicchè ho usato la programfiles mettendola tra virgolette col metodo sopra.

p.s.: forse l'esempio che ho fatto non è il migliore se il kis per partire bastava mettelo tra virgolette, ma nel momento in cui si danno parametri non andava più bene e bisognava invece usare, ad es
start /wait /b /D"%ProgramFiles%\Kaspersky Lab\Kaspersky Internet Security 2011\" .\avp.com STOP RTP /password=1
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 25/05/2011, 12:41
Buon giorno.

Resuscito il post per chiedere un piccolo comando di condizione.

Ossia per esempiop se voglio imporre una condizione se esiste una particolare chiave di registro, come o quale sintassi devo utilizzare?

Questo è il mio esempio riferita alla key del RunOnceEx, che ovviamente non funziona

If exist "REG KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" goto vaidovetipare


GRAZIE
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 25/05/2011, 15:26
Buon giorno.

Resuscito il post per chiedere un piccolo comando di condizione.

Ossia per esempiop se voglio imporre una condizione se esiste una particolare chiave di registro, come o quale sintassi devo utilizzare?

Questo è il mio esempio riferita alla key del RunOnceEx, che ovviamente non funziona

If exist "REG KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" goto vaidovetipare


GRAZIE
REG QUERY "HKLM\xxx\xxxxx" /ve|| REG ADD "HKLM\xxxx\xxxxx" /v nome /t REG_DWORD /d 0 /f

Ciao.

PS: lo scritto in corsa, ma idea e quello
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: ilsaggio - 30/05/2011, 10:10
scusate, come posso fare a prendere solo il valore di una chiave e metterlo in un testo per usarlo? nello specifico, volevo fare uno script che mi leggesse il gateway assegnato al pc, ne prendesse l'ip e ne facesse poi il ping...
ho provato con
Codice: [Seleziona]
Reg Query HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\{09A8F4A5-31A6-4137-8151-5C390CDE44F7}\Parameters\Tcpip /v DhcpDefaultGateway > DhcpDefaultGateway.txtma nel file DhcpDefaultGateway.txt mi scrive tutto

Codice: [Seleziona]

! REG.EXE VERSION 3.0

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\{09A8F4A5-31A6-4137-8151-5C390CDE44F7}\Parameters\Tcpip
    DhcpDefaultGateway REG_MULTI_SZ XX.XX.XXX.X\0\0
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 30/05/2011, 12:33
@ECHO OFF
:: delims is a TAB followed by a space
FOR /F "tokens=2* delims=    " %%A IN ('REG QUERY "HKLM\SYSTEM\ControlSet001\Services\{09A8F4A5-31A6-4137-8151-5C390CDE44F7}\Parameters\Tcpip" /v DhcpDefaultGateway') DO SET TCPIP=%%B
ECHO TCPIP=%TCPIP%
pause

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: ilsaggio - 30/05/2011, 22:27
grazie !! ma come lo passo al ping? o eventualmente ad un file di testo?
se lo eseguo a schermo si ferma scrivendo
TCPIP=
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 30/05/2011, 22:32
>"C:\ilsaggio.txt" ECHO Ciao ilsaggio
>>"C:\ilsaggio.txt" ECHO %TCPIP%
>>"C:\ilsaggio.txt" ECHO    Ciao

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: ilsaggio - 30/05/2011, 22:44
sempre tempestivo...ma non ho capito... :)
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 30/05/2011, 23:03
test.cmd
Citazione
@ECHO OFF
:: delims is a TAB followed by a space
FOR /F "tokens=2* delims=    " %%A IN ('REG QUERY "HKCU\Control Panel\International" /v sCountry') DO SET Country=%%B
::ECHO Country=%Country%
>"C:\ilsaggio.txt" ECHO %Country%
>>"C:\ilsaggio.txt" ECHO    Ciao

in "C:\ilsaggio.txt" trovi scritto quello che ai letto in chiave di registro ect ect

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: ilsaggio - 31/05/2011, 00:12
si questo l'avevo capito, e so già come scrivere in un file di testo...ma se il tuo codice sopra è esatto, come passo il gateway "puro" al ping, ed eventualmente ad un file di testo per vedere un log del risultato?
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 31/05/2011, 13:34
In esempio di sopra ce tutto, non capisco cosa vuoi fare li ???, che con il esempio di sopra non riesci farlo, mi spiego bene, il script cmd legge il registro, dopo in variabile salva il testo trovato in quello chiave di registro ect ect, in questo punto tu ai il variabile che dopo la usi come vuoi li, scrivi un file di testo, se vuoi la compari con un tuo testo per verificare se ai trovato quello che cerchi, aggiungi in registro ancora in un altro KEY ect ect, fai tutto quello che vuoi

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: ilsaggio - 31/05/2011, 17:06
vorrei creare un file .bat che mi controlli da solo lo stato della rete...quindi che mi faccia ipconfig, e lo stampi su un file...nel caso in cui non fosse assegnato nessun ip, me lo faccia notare senza andare avanti..in caso controrio, inviece deve provare a fare un ping prima al gateway e poi semmai all'esterno, tipo google...

Codice: [Seleziona]
@ECHO OFF
@ ipconfig /all >> test.txt >> temp.txt
:: delims is a TAB followed by a space
FOR /F "tokens=2* delims=    " %%A IN ('REG QUERY "HKLM\SYSTEM\ControlSet001\Services\{09A8F4A5-31A6-4137-8151-5C390CDE44F7}\Parameters\Tcpip" /v DhcpDefaultGateway') DO SET TCPIP=%%B
ECHO TCPIP=%TCPIP%
@ ping %TCPIP% >> temp.txt

ma non va, mi da errore
oltretutto mi sa che con questo codice, mi direbbe XX.XX.XX.XX/0/0
e se ne faccio il ping mi dà errore
comunque non si può fare uno script assoluto, credo che in ogni pc cambi il mynic
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 31/05/2011, 17:26
Si fa tutto dal file cmd, ma e un script vecchio, in pochi in web sano giocare ancora con quello, i opzioni ci sono ma cosi semplici e cosi complicati (per fare una cosa a vlte serve scrivere 1000 line, invece in autoit per esempio ne bastano solo 2 3 4 line di codice ehhhhhh), forse dovrai usare autoit o altri script per fare cose un po più complicate, riguardo il codice di sopra per non dire che non o giocato mai con le IP, diciamo che o poco esperienza al riguardo cosi non so dirti niente, quello che vedo li e che quello chiave di registro in mio WIndows 7 x64 non essite appunto il variabile %TCPIP% torna NUL vole dire e ""


Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 31/08/2011, 10:54
Scusate ragazzi, ma non riesco in cosa semplice semplice per Windows 7 64 bit, tempo fa avevo chiesto qualcosa di simile, però non includendo la compressione in file autoestraente.

In poche parole se voglio copiare una cartella con dei file (es. Gadget) nel percorso "%programfiles%\Windows Sidebar\Gadgets

Basta eseguire il semplice sript, così mi copia tutto il contenuto della cartella "Gadgets_extra" nel percorso indicato.
Codice: [Seleziona]
xcopy "Gadgets_extra" "%programfiles%\Windows Sidebar\Gadgets" /E /Q /H /R /Y
Questo in sistema a 64 bit va ad allocarsi proprio nella cartella programfiles ed è tutto OK.



Il problema nasce quando io voglio comprimere in file unico autoestraente, con WinRAR
dove nel commento inserisco

Codice: [Seleziona]
Setup=instal.bat
TempMode
Silent=2
Overwrite=1

Dove instal.bat è lo script di cui sopra

Bene l'estrazione viene eseguita ma in "programfiles(x86)" e non in "programfiles"!!
Anche provando con il tool  "bat to exe" la stessa cosa, Il percorso programfiles in autoestraente non viene riconosciuto in 64 bit, ma solo la versione X86.

Qualcuno potrebbe darmi una mano?   :BangHead: :BangHead:

GRAZIE
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 31/08/2011, 11:13
Perché il exe in winrar e x32, appunto anche i percorsi vano automaticizzate in x86 mod

in certi casi meglio usare il IF

IF EXIST "%ProgramFiles(x86)%" (xcopy "Gadgets_extra" "%systemdrive%\Program Files\Windows Sidebar\Gadgets" /E /Q /H /R /Y) ELSE (xcopy "Gadgets_extra" "%programfiles%\Windows Sidebar\Gadgets" /E /Q /H /R /Y)

oppure usa il %PROCESSOR_ARCHITECTURE% per sapere in che architettura stai lavorando

"%systemdrive%\Program Files" = se e solo per windows 7, allora in windows 7 il percorso "C:\Program Files (x86)" e il "C:\Program Files" sono già di default (non serve localizzarli)

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 31/08/2011, 11:35
GRAZIE!! :)

Adesso finalmente funziona, anche comprimendolo in autoestrazione con WinRAR.

Ma perchè WinRAR si comporta così, eppure è la versione a 64 bit, veificato anche nei processi.

p.s. ma solo WinRAR puofare questa funzione di autoestrazione?

Un saluto
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 31/08/2011, 14:41
Ogni applicazione si comporta cosi, e la regola diciamo, e tutto ok li non ce niente che non va, come detto ogni exe si comporta cosi

Ciao.

Postato il: 31/08/2011, 14:05


Comunque (anche se piu che funzionante, che e quello che conta, basta che funzioni tutto altro dopo a meno importanza) quello script era per dare un esempio scritto in corsa, il script coretto  e che dovrebbe essere ok in ogni scenario possibile (perché uno e in x32 e crea una cartella 'program files (x86)' cosi confonde il scirpt diciamo ect ect) o dire bene anche in windows xp 64, e questo

Citazione
SET PRGFLDDIR=%programfiles%
IF %PROCESSOR_ARCHITECTURE%==AMD64 SET PRGFLDDIR=%PRGFLDDIR:~-0,-6%

xcopy "Gadgets_extra" "%PRGFLDDIR%\Windows Sidebar\Gadgets" /E /Q /H /R /Y

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 31/08/2011, 16:09
Grazie per la tua disponibilità dato che mi trovo ti pongo un'altra "rognetta" se si può dire

Stesso problema per quanto riguarda il system32, allora seguendo l'esempio di cui sopra che funziona per la root programfiles, non mi funziona per il system32.

Il tuo script adattato se lo lancio così com'è funziona!

Codice: [Seleziona]
IF EXIST "%ProgramFiles(x86)%" (xcopy "Calcolator Plus" "%systemdrive%\Windows\System32" /E /Q /H /R /Y) ELSE (xcopy "Calcolator Plus" "%systemroot%\System32\Calcolator Plus" /E /Q /H /R /Y)
Ma se tento di fare l'autoestraente indicante l'install contenente lo script di sopra, mi indirizza i file nella root "SysWOW64" anzichè in "system32".

Nello script al posto di %programfiles(x86) o inserito "SysWOW64", ma non funziona lo stesso, mi indirizza il file sempre in SysWOW64.

Questo è un problema diverso?

Grazie
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 31/08/2011, 16:42
E la stesa cosa, appunto mandato secondo esempio quello OK diciamo, ecco

Citazione
SET PRGFLDDIR=%programfiles%
SET SYSDIR= %SystemRoot%\System32
IF %PROCESSOR_ARCHITECTURE%==AMD64 SET PRGFLDDIR=%PRGFLDDIR:~-0,-6%
IF %PROCESSOR_ARCHITECTURE%==AMD64 SET SYSDIR=%SystemRoot%\SysWOW64

xcopy "Gadgets_extra" "%PRGFLDDIR%\Windows Sidebar\Gadgets" /E /Q /H /R /Y
::xcopy "Calcolator Plus" "%SYSDIR%\Calcolator Plus" /E /Q /H /R /Y

attenzione, perché molti si confondano, il SysWOW64 e destinazione corretta, detto questo perché molti si confondano, in x64 in system32 restano file 64 bit, invece le file di programmi 32 bit sono in SysWOW64, cosi in tuo casso il SysWOW64 e destinazione corretta in casso che il programma che installa e 32 bit

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 23/01/2012, 17:46
Ho "specificato" meglio i percorsi per quanto riguarda la root Program files, sia nei sistemi 32 che 64 bit.

Adesso anche con winRAR, se vogliamo idirizzare in Program Files dobbiamo scrivere papale papale "C:\Program Files"  in virtù di %programfiles% che indirizza in Program Files (x86)


Ho modificato in prima pagina i seguenti percorsi:

%PROGRAMFILES% - Indica il percorso C:\Program Files (solo nei S.O. a 32 bit) oppure C:\Program Files (x86) nei sistemi a 64 bit
"C:\Program Files" - Indica il percorso C:\Program Files (nei S.O. a 32 e 64 bit)
%COMMONPROGRAMFILES% - Indica il percorso C:\Program Files\Common Files (solo nei S.O. a 32 bit)
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: Mr.X - 23/01/2012, 18:53
Citazione
Adesso anche con winRAR, se vogliamo idirizzare in Program Files dobbiamo scrivere papale papale "C:\Program Files"  in virtù di %programfiles% che indirizza in Program Files (x86)
non mi risulta quello che riporti:

per sistemi x86 localizzati in italiano:
%programfiles% --------------------> C:\Programmi
%CommonProgramFiles% ------------> C:\Programmi\Common Files

per sistemi x64 localizzati in italiano:
%programfiles% --------------------> C:\Programmi
%ProgramFiles(x86)% --------------> C:\Programmi (x86)
%CommonProgramFiles% -----------> C:\Programmi\Common Files
%CommonProgramFiles(x86)% ------->C:\Programmi (x86)\Common Files
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 23/01/2012, 19:23
Forse mi sono espresso male, intendo dire se per esempio in un autoestraente fatto con WinRAR indichiamo il percorso %programfiles% , se lo eseguiamo in sistema a 64 bit, questo punterà automaticamente in Program files (x86) e non in Program files come dovrebbe essere.

Per cui nei S.O. a 64 bit indicare %programfiles% oppure %programFiles(x86)% è la stessa identica cosa per WinRAR, non fa distinzione

"C:\Program Files"------------------> C:\Programmi
%programfiles% -------------------> C:\Programmi (x86)
%programFiles(x86)% -------------> C:\Programmi (x86)
%CommonProgramFiles% ----------> C:\Programmi (x86)\Common Files
%CommonProgramFiles(x86)% ----->C:\Programmi (x86)\Common Files
"C:\Program Files\Common Files"---->C:\Programmi\Common Files

Per questo indico, in WinRAR il palese percorso tra virgolette "C:\Program Files".

Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 10/10/2014, 18:40
Buona sera.

Dopo tanto tempo riesumo il thread in quanto ho bisogno di qualche idea o procedura  per effettuare la chiusura della finestra di un determinato programma.

In particolare, quando lancio il il software di gestione della tastiera, questo automaticamente si posizona a icona nella tray, però lascia anche la finestra aperta con le impostazioni nel mezzo del desktop, e  ogni volta devo chiuderla manualmente o con "Alt + F4"
Dato che questo programma deve avviarsi insieme a windows, questo crea una bella seccatura, allora vorrei "automatizzare" l'avvio con chiusura finestra tramite comando bat.

Ringrazio per eventuali suggerimenti.

Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 10/10/2014, 19:33
Usa AutoIt e molto semplice sia da imparare sia da usare, esempio https://www.autoitscript.com/autoit3/docs/libfunctions/_RunDos.htm
Codice: [Seleziona]
Run(@ComSpec & " /c " & 'commandName', "", @SW_HIDE)
;or
RunWait(@ComSpec & " /c " & 'commandName', "", @SW_HIDE)

niente altro

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 10/10/2014, 21:06
Grazie per la risposta ONE  :)

Provo a studiarmi anche la guida di MISTER X
http://www.eng2ita.net/forum/index.php/topic,7855.0.html
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 11/10/2014, 01:08
Ciao DMD, fai riferimento sempre al guida del AutoIt, li troverai tutto, il bello del AutoIt e che potrai usare o imparare solo quello che vuoi usare, nemmeno serve sapere le altre cose, cosi piano piano senza accorgersi una volta famigliarizzato, dopo capirai tutto il resto subito, ricorda li e tutto facile davvero, e piu facile usare autoit che un file cmd ;), serve solo un po di spinta diciamo, del resto per ogni cosa che non capirai potrai chiedere ;)  

idea base e semplice, esempio scarica e installa AutoIt https://www.autoitscript.com/site/autoit/downloads/ dopo scarica e installa anche SciTE4AutoIt3 https://www.autoitscript.com/site/autoit-script-editor/downloads/

dopo solo quello che serve a te, cosi in 1 secondo ehhhhhhh, apri SciTE (aprire un nuovo file au3, e salva come DMD.au3), dopo copia dentro
Codice: [Seleziona]
FileInstall("DMD.bat", @TempDir, 1)
RunWait(@ComSpec & " /c " & @TempDir & "\DMDFile.bat", @TempDir, @SW_HIDE)
FileDelete(@TempDir & "\DMD.bat")
dopo clicca sul Menu Tool\Compile, oppure click destro e dopo in menu clicca Compila Script, ed e andato, ecco hai il tuo EXE che eseguirà il dmd.bat o cmd i silent mod ;), ahhh se notti e stato usato il FileInstall("DMD.bat", @TempDir, 1) che vole dire che il "DMD.bat" dovrà essere nella stesa direttori del DMD.au3, oppure metti da te il direttori se vuoi esempio FileInstall(@DesktopDir& "\DMD.bat", @TempDir, 1)

comunque sempre meglio usare il #RequireAdmin in modo che il exe partire o chiedere sempre Admin Right
Codice: [Seleziona]
#RequireAdmin
FileInstall("DMD.bat", @TempDir, 1)
RunWait(@ComSpec & " /c " & @TempDir & "\DMDFile.bat", @TempDir, @SW_HIDE)
FileDelete(@TempDir & "\DMD.bat")

ecco come vedi 1 secondo e 2 click e hai il tuo exe ehhhhh, ma come notti piano piano serve passare tutti comandi cmd in autoit direttamente, visto che e inutile usare file cmd quando esegui tutto direttamente e ancora molto molto molto meglio dal autoit, esempio
Codice: [Seleziona]
RunWait(@SystemDir & "\makecab.exe" & " /D " & "CompressionType=LZX" & " /D " & "CompressionMemory=21" & ' "' & "destinazionefile.inf" & '" ' & "destinazione.in_" & '"', "", @SW_HIDE)
addirittura hai gia un function pronto https://www.autoitscript.com/autoit3/docs/libfunctions/_RunDos.htm
Codice: [Seleziona]
; #FUNCTION# ====================================================================================================================
; Author ........: Jeremy Landes <jlandes at landeserve dot com>
; ===============================================================================================================================
Func _RunDos($sCommand)
Local $nResult = RunWait(@ComSpec & " /C " & $sCommand, "", @SW_HIDE)
Return SetError(@error, @extended, $nResult)
EndFunc   ;==>_RunDos
come vedi usa solo il RunWait(@ComSpec & " /C " & $sCommand, "", @SW_HIDE), cosi potrai usare direttamente da te il Run e Runwait (come sempre e il RunWait quello da usare in modo che il exe non chiudersi prima che il processo a finito)

se vuoi usare il ALT + F4 basta aggiungere in script il
Codice: [Seleziona]
Send ( "!{F4}")

credimi spendi un po di tempo con certi cose perché vale la pena

ecco ti o gia allegato un vecchia guida ITA, che non e completa, e consigliato fare sempre riferimento al Guida ENU visto che da allora molte e molte cose sono cambiate e migliorate nelle release del AutoIt, comunque idea base e quella diciamo cosi potrai dare un ripassata veloce al guida ITA oppure anche ai quelli di terze parti http://www.netrooper.com/guida_autoit.pdf e dopo vedi quella ENU della ultima release v3.3.12.0

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 11/10/2014, 08:33
Ti ringrazio infinitamente, sei sempre preciso come tuo solito per le preziose informazioni.

Nel mio specifico caso AutoIT dovrà "automatizzare" solo il lancio del programma con chiusura della finestra di windows, e spero di trovare presto una soluzione nelle guide.

Ciao  :)
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 11/10/2014, 10:48
Ciao DMD, anni e anni fa essendo come te che usavamo (sapevamo solo usare\scrivere) tutti  solo file cmd, disperatamente chiedevamo sempre come eseguire un file cmd in silent mod sai quando rompe idea che quando esegui un file cmd si apre sempre la tabella del DOS, ed ecco sopra in 3 line hai la soluzione  ;), ricorda il function FileInstall vole dire che Autoit includerà quello file cmd in se stesso (e come dirli mi includi questo file cmd dentro exe, e dopo me la esegui in silend mod), comunque come detto anche se questo (lanciare o eseguire un file cmd in slent mod) e davvero molto molto utile, come dire questo e il modo piu banale nel usare Autoit, visto che come gia detto e davvero molto molto più facile eseguire tutto dal Autoit, che scrivere e lanciare o usare un file cmd

ricorda Autoit e nato per automatizzare anni e anni fa, ma dopo piano piano si e trasformato in un linguaggio di programmazione, cosi davvero non ce proprio niente che non potrai fare con AutoIt

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 11/10/2014, 23:33
Anche se non è proprio perfetto, ho utilizzato la procedura  che ho postato nel Thread apposito:

http://www.eng2ita.net/forum/index.php/topic,4997.msg63355.html#msg63355

Un saluto
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 03/02/2015, 10:16
Buona giornata a tutti.

Mi sono sempre chiesto come si possa gestire un file con caratteri speciali, che i comandi bat non riconoscono come ad esempio la "µ" di µTorrent.

Grazie
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 03/02/2015, 12:39
Ciao DMD, prova cercare in Google cmd file + CHCP 65001 oppure extended ascii character + bat file, normalmente dovrà essere una cosa cosi credo

Test.cmd
Codice: [Seleziona]
chcp 65001
µTorrent.exe /S

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 03/02/2015, 13:29
Ti ringrazio  One.  :)

Vediamo se riesco a trovare qualcosa, più che altro non mi serve per eseguire l'installer il cui nome è "uTorrent.exe", bensì per muovere il collegamento da %APPDATA%\Microsoft\Windows\Start Menu.

In particolare vorrei esegurire questo comando
Codice: [Seleziona]
move  "%APPDATA%\Microsoft\Windows\Start Menu\µTorrent.lnk"  "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\µTorrent.lnk"
Un saluto
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 03/02/2015, 13:41
Ciao DMD, e una vera e proprio rottura perché io anche in Visual Studio 2015 non riesco  (solo per scopo di test diciamo) scrivere in consolle in Unicode usando le funzioni ufficiali di Microsoft come OutputDebugStringW, voglio dire pensa te dopo parlare di file cmd o bat che succede ehh

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 03/02/2015, 21:36
Ciao DMD, prova usare il
Codice: [Seleziona]
MOVE /Y "%APPDATA%\Microsoft\Windows\Start Menu\*Torrent.lnk"  "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\"
Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: DMD - 03/02/2015, 23:17
SEI GRANDE ONE  :)

Funziona!!

Quindi l'asterisco "*" sostituisce tutti i caratteri speciali o solo il carattere "µ"

Grazie
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: OnePiece - 03/02/2015, 23:46
Ciao DMD, non e una soluzione perfetta perfetta ma diciamo e accettabile, il punto e che l'asterisco tira in ballo ogni carattere e piu di uno, vole dire che se trova anche il xxxxxxTorrent.lnk sposta anche quello, in povere parole sposta ogni file che finisce con Torrent.lnk

Ciao.
Titolo: Re: Comandi BATCH necessari per l'unattended
Inserito da: romsempire - 31/07/2016, 08:58
Secondo me da Windows 7 in poi conviene usare powershell. E' molto più potente di uno script batch, si possono fare molte più cose e si possono addiriddura richiamare funzioni del dot net framework stesso negli script powershell.
Titolo: Re:Comandi BATCH necessari per l'unattended
Inserito da: DMD - 01/05/2020, 20:31
Buonasera.
Dopo molto tempo devo rispolverare questo tipo di programmazione e non so come  fare per eseguire una funzione.
Devo creare un comando che deve verificare se nella cartella  "hosts", esiste un determinato blocco host riferito ad un sito questo non deve essere creato di nuovo.
Se gia esiste un determinato blocco come es. "0.0.0.0  giochionline.com", quando lancio lo script come andrebbe modificato quest'ultimo, affinchè non venga riscritta una seconda riga identica nel file host?
Grazie

Codice: [Seleziona]
@echo off
SET hosts=%windir%\system32\drivers\etc\hosts


attrib -r %hosts%

echo. >>%hosts%
FOR %%A IN (#Hosts_block_giochi_online) DO (echo %%A >>%hosts%)

FOR %%A IN (

giochionline.com

) DO (
 echo 0.0.0.0 %%A >>%hosts%
)

attrib +r %hosts%
echo Successfully added entries