Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare
Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare
Realizzato da Lenovo e installato presso il Cineca di Casalecchio di Reno, Pitagora offre circa 44 PFlop/s di potenza di calcolo ed è dedicato alla simulazione della fisica del plasma e allo studio dei materiali avanzati per la fusione, integrandosi nell’ecosistema del Tecnopolo di Bologna come infrastruttura strategica finanziata da EUROfusion e gestita in collaborazione con ENEA
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA
Rullo di lavaggio dei pavimenti abbinato a un potente motore da 28.000 Pa e a bracci esterni che si estendono: queste, e molte altre, le caratteristiche tecniche di Z60 Ultra Roller Complete, l'ultimo robot di Mova che pulisce secondo le nostre preferenze oppure lasciando far tutto alla ricca logica di intelligenza artificiale integrata
Renault Twingo E-Tech Electric: che prezzo!
Renault Twingo E-Tech Electric: che prezzo!
Renault annuncia la nuova vettura compatta del segmento A, che strizza l'occhio alla tradizione del modello abbinandovi una motorizzazione completamente elettrica e caratteristiche ideali per i tragitti urbani. Renault Twingo E-Tech Electric punta su abitabilità, per una lunghezza di meno di 3,8 metri, abbinata a un prezzo di lancio senza incentivi di 20.000€
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-11-2008, 14:34   #1
Daniele Rossi
Junior Member
 
L'Avatar di Daniele Rossi
 
Iscritto dal: Oct 2008
Città: Lucca
Messaggi: 15
[script] cerca e cancella riga

Ciao,

ho un file HOSTS contenente centinaia di indirizzi web sotto forma numerica [xxx.xxx.xxx.xxx] e con [nomeesempio.com]

molti di questi indirizzi sono identici, fatta eccezione per la parte iniziale.
es: 1.nomeesempio.com, 2.nomeesempio.com, 3.nomeesempio.com, ecc...

vorrei realizzare uno script o comunque sfruttare uno script di qualche programma già esistente (OpenOffice?) per rimuovere tutti i simili e mantenere solo la radice.
Dell'indirizzo sopra vorrei solo nomeesempio.com, cancellando le righe superflue, ma non riesco a trovare lo script o la stringa di codice da usare per farlo.


Se qualcuno può darmi lumi, grazie

Ultima modifica di Daniele Rossi : 06-11-2008 alle 14:40.
Daniele Rossi è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2008, 16:59   #2
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Usando la powershell dovrebbe essere abbastanza agevole. Se mi spieghi un pò più nel dettaglio cosa vuoi fare provo a darti una mano.
Immagino che il file hosts contenga anche altre righe che non devi toccare. Penso che la cosa più pratica sia ciclare il file riga per riga tramite il cmd-let get-content e lavorarci così.

Ti consiglio intanto di scaricarti la powershell da qui
http://www.microsoft.com/windowsserv.../download.mspx

scegliendo quella relativa al tuo sistema operativo. Nel caso non lo abbia già scarica pure il framework .NET in quanto è richiesto.

Una volta installata la puoi richiamare da esegui digitando powershell.
Quando hai concluso l'installazione spiegami nel dettaglio come dev'essere il nuovo file e cerchiamo di risolvere.

edit. Giusto per darti un'idea della flessibilità di powershell.
Come faresti col classico prompt dei comandi raggiungi la cartella contenente il tuo file hosts e digita questo comando (oppure fai copia incolla

gc hosts | ? {$_ -notmatch "nomeesempio.com"} | out-file nuovo.txt

questa riga esaminerà il contenuto del tuo file ed estrarrà solo le righe che non contengono la stringa nomeesempio.com.
Una volta filtrate reindirizzerà l'output su un nuovo file di testo di nome nuovo.txt che verrà creato all'interno della stessa cartella.

Ultima modifica di john_revelator : 06-11-2008 alle 17:12.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2008, 08:27   #3
Daniele Rossi
Junior Member
 
L'Avatar di Daniele Rossi
 
Iscritto dal: Oct 2008
Città: Lucca
Messaggi: 15
Fantastico! penso che questo tool sia esattamente quel che fa per me

Ora, venendo al problema, ho scritto:
gc hosts | ? {$_ -match "a8.net"} out-file nuovo.txt

dove
a8.net è uno dei molti siti listati con "doppioni" (es: test.a8.net, 1.a8.net, 2.a8.net, ecc...)

adesso stavo cercando di avere un file di testo contenente tutte le voci che includono a8.net, tanto per fare una prova.

Il risultato però è un errore che ti riporto:
Where-Object : Impossibile trovare un parametro corrispondente al nome 'out-file'.
In riga:1 car:13
+ gc hosts | ? <<<< {$_ -match "a8.net"} out-file nuovo.txt



Il mio scopo finale è quello di conservare solo i siti "radice" (quindi a8.net ma non test.a8.net, 1.a8.net, 2.a8.net, ecc...) così da avere un file HOSTS snello e performante.
La lista adesso comprende 616.620 byte, tagliando le righe non "radice" dovrei arrivare intorno ai 100.000 byte circa.


EDITO:
per ottimizzare:
mi occorre un comando che "rimuova" tutte le voci con più di 4 . (punti) sulla stessa riga.
Questo perché i siti listati sono del genere:

127.0.0.1 test.nomesito.com

e io voglio conservare solo la radice, ovvero:

127.0.0.1 nomesito.com

Ultima modifica di Daniele Rossi : 07-11-2008 alle 08:34.
Daniele Rossi è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2008, 10:15   #4
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
L'errore che ti viene restituito è dovuto al fatto che prima di out-file ti sei dimenticato di inserire la pipe (|).

Puoi anche limitarti a fare prima

gc hosts | ? {$_ -match "a8.net"}

così vedi le righe che corrispondono al criterio. Una volta appurato questo puoi reindirizzare l'output su file di testo.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2008, 10:32   #5
Daniele Rossi
Junior Member
 
L'Avatar di Daniele Rossi
 
Iscritto dal: Oct 2008
Città: Lucca
Messaggi: 15
Funziona ma è un processo lentissimo, devo selezionare una riga "radice" per volta e poi trascrivere i risultati.

C'è un comando per rimuovere tutte le righe che presentano più "punti", come dicevo sopra?
Al momento non mi viene in mente un metodo più efficiente per procedere.
Daniele Rossi è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2008, 10:44   #6
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Quote:
Originariamente inviato da Daniele Rossi Guarda i messaggi
Funziona ma è un processo lentissimo, devo selezionare una riga "radice" per volta e poi trascrivere i risultati.

C'è un comando per rimuovere tutte le righe che presentano più "punti", come dicevo sopra?
Al momento non mi viene in mente un metodo più efficiente per procedere.
E' normale che impieghi del tempo vista la mole di dati.
Per quanto riguarda la tua domanda ci devo pensare. Adesso sono a lavoro. Stasera con calma vedo se riesco a trovare una soluzione.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2008, 15:48   #7
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Con questo comando ti verranno restituite tutte le righe del file host che contengono al massimo 4 punti

Codice:
gc hosts | where { @([regex]::matches($_,"\.")).length -le 4}
Per reindirizzare l'output non farai altro che usare il cmdlet out-file.

Codice:
gc hosts | where { @([regex]::matches($_,"\.")).length -le 4} | out-file nuovo.txt
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2008, 17:00   #8
Daniele Rossi
Junior Member
 
L'Avatar di Daniele Rossi
 
Iscritto dal: Oct 2008
Città: Lucca
Messaggi: 15
john grazie, seriamente
era 1 mese che impazzivo tra siti di script e manuali pdf di openoffice senza cavarne nulla di utile.

la dimensione attuale è di 151.654 byte.
Un bel risultato direi
Daniele Rossi è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2008, 20:25   #9
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Quote:
Originariamente inviato da Daniele Rossi Guarda i messaggi
john grazie, seriamente
era 1 mese che impazzivo tra siti di script e manuali pdf di openoffice senza cavarne nulla di utile.

la dimensione attuale è di 151.654 byte.
Un bel risultato direi
La powershell è utilissima. Prego.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare Cineca inaugura Pitagora, il supercomputer Lenov...
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA Mova Z60 Ultra Roller Complete: pulisce bene gra...
Renault Twingo E-Tech Electric: che prezzo! Renault Twingo E-Tech Electric: che prezzo!
Il cuore digitale di F1 a Biggin Hill: l'infrastruttura Lenovo dietro la produzione media Il cuore digitale di F1 a Biggin Hill: l'infrast...
DJI Osmo Mobile 8: lo stabilizzatore per smartphone con tracking multiplo e asta telescopica DJI Osmo Mobile 8: lo stabilizzatore per smartph...
Halo Infinite: in arrivo l'ultimo grande...
TV LG OLED 2025: Amazon fa sconti al che...
Forse, finalmente, ci siamo? Alcuni rumo...
Smart home più facile ed economic...
Motorola edge 50 neo in svendita, 202€: ...
Cina e Paesi Bassi verso la distensione ...
'Senza TSMC non ci sarebbe NVIDIA': Jens...
Fumo di sigaretta e sporco per 17 anni: ...
Resi Amazon Natale 2025: cambiano i temp...
L'SSD modulare aggiornabile come un PC: ...
Intel ha denunciato un ex dipendente per...
Blue Origin rinvia il secondo lancio del...
Nasce l'albo degli influencer 'rilevanti...
Il Digital Networks Act è stato r...
ASUS ROG ha lanciato due nuovi monitor d...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 09:41.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v