Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Altri Linguaggi - [Batch] un comado simile a IF... GOTO per file hosts
Forum - Altri Linguaggi - [Batch] un comado simile a IF... GOTO per file hosts

Avatar
DMD (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/05/2020

Segnala al moderatore
Postato alle 21:25
Venerdì, 01/05/2020
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 sorgente - presumibilmente Delphi

  1. @echo off
  2. SET hosts=%windir%\system32\drivers\etc\hosts
  3.  
  4.  
  5. attrib -r %hosts%
  6.  
  7. echo. >>%hosts%
  8. FOR %%A IN (#Hosts_block_giochi_online) DO (echo %%A >>%hosts%)
  9.  
  10. FOR %%A IN (
  11.  
  12. giochionline.com
  13.  
  14. ) DO (
  15.  echo 0.0.0.0 %%A >>%hosts%
  16. )
  17.  
  18. attrib +r %hosts%
  19. echo Successfully added entries


Ultima modifica effettuata da DMD il 01/05/2020 alle 21:48
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6133
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 22:55
Venerdì, 01/05/2020
La domanda è perché farlo con uno script batch se con qualche linea di C o qualsiasi altro linguaggio riesci a farlo senza problemi?


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
DMD (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/05/2020

Segnala al moderatore
Postato alle 22:58
Venerdì, 01/05/2020
Non sono pratico di altri linguaggi utilizzo solo un poco il batch, ed il comando lo inserisco in file eseguibile.

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6133
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 23:03
Venerdì, 01/05/2020
Non mi pare che tu sia pratico neanche di batch.

E che senso ha inserirlo in un eseguibile? Che intendi?

A parte il fatto che per modificare il file hosts devi avere diritti di amministratore.

Ultima modifica effettuata da nessuno il 01/05/2020 alle 23:04


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
DMD (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/05/2020

Segnala al moderatore
Postato alle 23:11
Venerdì, 01/05/2020
Non sono pratico di batch, per qwuello ho chiesto se si poteva fare.
Poi il file di batch basta lanciarlo eventualmente come amministratore e il blocco hosts dovrebbe funzionare.

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6133
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 23:24
Venerdì, 01/05/2020
Qualsiasi eseguibile scritto in qualsiasi linguaggio lo lanci come amministratore, avendo le credenziali.

Il linguaggio batch è scomodo ... in qualsiasi altro linguaggio lo fai meglio e prima ...

Comunque

findstr "0.0.0.0 giochionline.com" %hosts%
if not errorlevel 0 .... (non trovato)
(trovato)

e continui tu

Ultima modifica effettuata da nessuno il 01/05/2020 alle 23:34


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
DMD (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/05/2020

Segnala al moderatore
Postato alle 23:29
Venerdì, 01/05/2020
Ti ringrazio
Nella mia ignoranza ho solo iniziatio qualche approccio con il batch che mi sembrava più facile.

PM Quote