Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super
Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super
Arrivato sul mercato italiano a fine marzo, la serie Boox Go 10.3 (Gen II) offre Android 15, penna da 4096 livelli e retroilluminazione opzionale (nel modello da noi provato, Lumi, presente). La serie si compone di due tablet ePaper che fanno da e-reader, blocco note digitale e persino browser, tutto a un prezzo che fa dimenticare i prodotti di brand più blasonati
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Pannello QD-OLED da 32 pollici con risoluzione 4K, frequenza di aggiornamento a 240Hz e tempi di risposta rapidissimi: il Gigabyte MO32U24 evolve il progetto del suo predecessore MO32U e alza ulteriormente l'asticella delle prestazioni. È ancora una volta un monitor indirizzato ai giocatori più esigenti
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
realme 16 5G è un nuovo smartphone con sensore Sony IMX 852 da 50MP sul retro e uno specchio selfie fisico integrato nella camera bar, una prima nel segmento di mercato. Batteria da 6550mAh in un corpo da 8,1mm e 183g, certificazione IP69K e ricarica da 45W completano un pacchetto aggressivo per la fascia media, per uno dei prodotti più interessanti del produttore sul piano commerciale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 26-11-2019, 14:40   #1
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Script Whois di più IP su file TXT o CSV

Ciao a tutti,
ho un file .txt, ricavato da un file CSV, con all'interno degli IP, adesso dovrei fare il Whois di ogni IP ma, del WHOIS, mi servirebbe SOLO la parte in cui mi dice l'Internet Service Provider, quindi non tutte le informazioni.
Abbiamo creato un file .bat che lo fa ma genera tutte le informazioni e non ci serve.
Qualcuno potrebbe aiutarci in tal senso?
Grazie
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2019, 15:01   #2
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
Se sei sotto linux usa il comando grep nel parsing
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2019, 15:03   #3
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Se sei sotto linux usa il comando grep nel parsing
Ciao,
si potrei farlo sotto LINUX, mi potrestmi mettere per bene il comando, perdonami sono un po impedito su queste cose :P
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2019, 15:43   #4
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
Puoi farlo anche sotto windows, col porting di grep sotto win32.

Non ho idea di cosa sottoporti: il comando è "grep" e se gli passi i parametri farà quello che gli dici...
Ma io non ho la più pallida idea di cosa gli passi quindi potrei dirti
grep "IP"
ma non ho idea se su quella riga passi la parola IP...
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2019, 15:48   #5
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Metti un file TXT con le segnueti righe:

192.198.1.1;32980 (dopo il ";" è la porta)
192.198.1.2;19302
192.198.1.3;32980
192.198.1.4;19302
192.198.1.5;32980
192.198.1.6;19302

Che comando dovrei dare secondo te per far leggere il file, fare fare il WOHIS e far stampare SOLO l'ISP accanto all'IP?
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 08:01   #6
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
Io ti do i suggerimenti.. lo script completo te lo lascio fare a te.
Parliamo in ambiente linux..
Step uno leggere il file ( https://www.cyberciti.biz/faq/unix-h...ine-from-file/ )
Step due passarlo al comando whois (se esegui solo il whois ti darà l'elenco dei parametri, credo che il -c sia quello che ti serve: trova la corrispondenza più specifica contenente un attributo mnt-irt)

Quello che non capisco è a cosa ti serva la porta in quel file... se devi troncarla basta usare il comando "cut"
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 08:12   #7
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Cercando ho trovato questa funzione

#!/bin/bash
while read ip
do
whois -r $ip
done<ip_list

a quanto ho capito devo

1) creare un file chiamato ip_list e metterci gli indirizzi IP
2) creare questo script ".sh" ed eseguirlo.
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 09:09   #8
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Io ti do i suggerimenti.. lo script completo te lo lascio fare a te.
Parliamo in ambiente linux..
Step uno leggere il file ( https://www.cyberciti.biz/faq/unix-h...ine-from-file/ )
Step due passarlo al comando whois (se esegui solo il whois ti darà l'elenco dei parametri, credo che il -c sia quello che ti serve: trova la corrispondenza più specifica contenente un attributo mnt-irt)

Quello che non capisco è a cosa ti serva la porta in quel file... se devi troncarla basta usare il comando "cut"
Guarda perdonami continuo a non capire come fare
La posta potrebbe servirmi per dei controlli ma la posso anche eliminare.
Ho creato un file "log_test.txt" dove ci sono gli IP elencati sopra, come posso fare ti prego aiutami.
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 10:03   #9
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Allora ho creato il file "ip_resolver.sh"

Codice:
#!/bin/bash
for ip in ‘cat ip_list.txt’
do
  echo $ip
  ‘whois $ip >> whois-results.txt’
done
Da shell di Linux, prima di eseguire il file bash, sono andato sul desktop ed ho dato le autorizzazioni al file stesso:

Codice:
chmod u+x ip_resolver.sh
Sempre sul Desktop è presente il file “ip_list” contenente gli indirizzi da risolvere.

Quindi eseguo lo scrip:

Codice:
./ip_resolver.sh
ma mi da il seguente errore:

Codice:
.ip_resolver.sh: comando non trovato
Dove sbaglio? Sto eseguendo tutto da UBUNTU.
Grazie
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 10:04   #10
as2k3
Utente sospeso
 
L'Avatar di as2k3
 
Iscritto dal: Jun 2005
Città: Napoli
Messaggi: 8137
forse i permessi 775 devi dare al file
as2k3 è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 10:23   #11
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Quote:
Originariamente inviato da as2k3 Guarda i messaggi
forse i permessi 775 devi dare al file
Ecco cosa mi risponde

Codice:
root@Francesco-Latitude-E6230:/home/cesco/Scrivania# chmod 775 ip_resolver.sh 
root@Francesco-Latitude-E6230:/home/cesco/Scrivania# ./ip_resolver.sh 
bash: ./ip_resolver.sh: /bin/bash^M: interprete errato: File o directory non esistente
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 10:38   #12
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
Perchè hai creato il file in windows (il .sh) e poi lo hai messo in linux.
E si porta dietro la "sporcaria" dei terminatori.

Così risolvi:
https://www.caronteconsulting.com/no...d-interpreter/

Oppure fai prima a prendere l'editor di linux (va bene il gedit) e cancellare e mettere i ritorni a capo correttamente
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 10:46   #13
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Perchè hai creato il file in windows (il .sh) e poi lo hai messo in linux.
E si porta dietro la "sporcaria" dei terminatori.

Così risolvi:
https://www.caronteconsulting.com/no...d-interpreter/

Oppure fai prima a prendere l'editor di linux (va bene il gedit) e cancellare e mettere i ritorni a capo correttamente
Allora ho ricreato il file da gedit, ora me lo fa lanciare ma mi da quest'altro errore

Codice:
root@Francesco-Latitude-E6230:/home/cesco/Scrivania# ./ip_resolver.sh
‘cat
./ip_resolver.sh: riga 5: ‘whois: comando non trovato
Ip_list.txt’
./ip_resolver.sh: riga 5: ‘whois: comando non trovato
root@Francesco-Latitude-E6230:/home/cesco/Scrivania#
whois è isntallato
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 12:18   #14
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
togli via quegli apici che non servono a nulla.
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 12:21   #15
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
Questo è un modo:
Codice:
#!/bin/bash
for ip in $(cat ip_list.txt)
do
  echo $ip
  whois $ip >> whois-results.txt
done
questo un altro

Codice:
#!/bin/bash
filename='ip_list.txt'
while read ip; do 
   whois $ip
done < $filename
Non li ho provati ma dovrebbero essere giusti
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 12:36   #16
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Questo è un modo:
Codice:
#!/bin/bash
for ip in $(cat ip_list.txt)
do
  echo $ip
  whois $ip >> whois-results.txt
done
questo un altro

Codice:
#!/bin/bash
filename='ip_list.txt'
while read ip; do 
   whois $ip
done < $filename
Non li ho provati ma dovrebbero essere giusti
Guarda ho fatto così e mi funziona

Codice:
for ip in $(cat ip_list.txt)
do
   echo -n "$ip "
   whois $ip | grep -Po '^NetName:\s+\K.*'
done > whois-results.txt
e mi tira fuori SOLO il "Netname" se il file "ip_list.txt" è così:
Codice:
192.198.1.1
192.198.2.1
192.198.1.2
192.198.2.2
192.198.1.3
adesso invece mi piacerebbe fare la stessa cosa SE il file "ip_list.txt" fosse così:

Codice:
01/01/2019 17:57;192.198.1.1;32980 ;192.198.2.1;32980 (Data ed ora;IP;PORTA;IP;PORTA)
01/01/2019 17:57;192.198.1.2;19302;192.198.2.2;19302
01/01/2019 17:57;192.198.1.3;32980;192.198.2.3;19302
01/01/2019 17:57;192.198.1.4;19302;192.198.2.4;19302
01/01/2019 17:57;192.198.1.5;32980;192.198.2.5;19302
01/01/2019 17:57;192.198.1.6;19302192.198.6.6;19302
ideee?
Grazie
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 12:50   #17
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
anzichè cat, usa awk
"awk -F; '{print $1,$3}' ip_list.txt"
Dando per scondata che sia sempre il secondo e quarto campo separati da ;
Ma a me sfugge perchè hai un input così.. non sarebbe più semplice lavorare sul come ottieni tale lista?
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 13:09   #18
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Quote:
Originariamente inviato da Kaya Guarda i messaggi
anzichè cat, usa awk
"awk -F; '{print $1,$3}' ip_list.txt"
Dando per scondata che sia sempre il secondo e quarto campo separati da ;
Ma a me sfugge perchè hai un input così.. non sarebbe più semplice lavorare sul come ottieni tale lista?
Gurda ho modificato cosi

Codice:
for ip in $(awk -F; '{print $1,$3}' ip_list.txt)
do
   echo -n "$ip "
   whois $ip | grep -Po '^NetName:\s+\K.*'
done > whois-results.txt
e mi ha risposto cosi

Codice:
root@Francesco-Latitude-E6230:/home/cesco/Scrivania/Ip_Resolver2# ./ip_resolver.sh 
awk: l'opzione richiede un argomento -- F
Uso: awk [opzioni in stile POSIX o GNU] -f file-prog. [--] file ...
Usage: awk [opzioni in stile POSIX o GNU] [--] 'programma' file ...
Opzioni POSIX:		opzioni lunghe GNU: (standard)
	-f fileprog		--file=file-prog.
	-F fs			--field-separator=fs
	-v var=valore		--assign=var=valore
Opzioni brevi:		opzioni lunghe GNU: (estensioni)
	-b			--characters-as-bytes
	-c			--traditional
	-C			--copyright
	-d[file]		--dump-variables[=file]
	-D[file]		--debug[=file]
	-e 'testo-del-programma'	--source='testo-del-programma'
	-E file			--exec=file
	-g			--gen-pot
	-h			--help
	-i include_file		--include=include_file
	-l libreria		--load=libreria
	-L[fatal|invalid]	--lint[=fatal|invalid]
	-M			--bignum
	-N			--use-lc-numeric
	-n			--non-decimal-data
	-o[file]		--pretty-print[=file]
	-O			--optimize
	-p[file]		--profile[=file]
	-P			--posix
	-r			--re-interval
	-S			--sandbox
	-t			--lint-old
	-V			--version

Per segnalare problemi, vedi nodo `Bugs' in `gawk.info', oppure la
sezione `Reporting Problems and Bugs' nella versione a stampa.
Problemi di traduzione, segnalare ad: [email protected].

gawk è un linguaggio per scandire e processare espressioni.
Senza parametri, legge da 'standard input' e scrive su 'standard output'.

Esempi:
	gawk '{ sum += $1 }; END { print sum }' file
	gawk -F: '{ print $1 }' /etc/passwd
./ip_resolver.sh: riga 1: {print $1,$3}: comando non trovato
Dove sbaglio
spider81man è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 13:32   #19
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3301
è il ; che rompe, mettici un escape davanti

awk -F\; '{print $1,$3}' ip_list.txt

Un consiglio: senza ogni volta chiedere AIUTO AIUTO, ragiona su quello che stai facendo.
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2019, 13:40   #20
spider81man
Member
 
Iscritto dal: Nov 2007
Messaggi: 255
Quote:
Originariamente inviato da Kaya Guarda i messaggi
è il ; che rompe, mettici un escape davanti

awk -F\; '{print $1,$3}' ip_list.txt

Un consiglio: senza ogni volta chiedere AIUTO AIUTO, ragiona su quello che stai facendo.
ahahah si hai ragione ma sono in palla ed ho bisogno di aiuto :P

facendo così

Codice:
for ip in $(awk -F\; '{print $1,$3}' ip_list.txt)
do
   echo -n "$ip "
   whois $ip | grep -Po '^NetName:\s+\K.*'
done > whois-results.txt
il file whois-results.txt me lo da così

Codice:
01/01/2019 17:57 32980 01/01/2019 17:57 19302 01/01/2019 17:57 32980 01/01/2019 17:57 19302 01/01/2019 17:57 32980 01/01/2019 17:57 19302
In pratica TOGLIE gli IP e poi non fa il whois.
spider81man è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con ...
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming Gigabyte MO32U24 OLED: il 4K a 240Hz su un panne...
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh Recensione realme 16 5G: lo smartphone con Selfi...
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni Come rispettare tutte le nuove regole per i mono...
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta DLSS 4.5: con Dynamic Frame Generation e MFG 6X ...
Isar Aerospace rinvia ancora il lancio d...
La nomina di Luca Parmitano per la missi...
Controaccusa di Netgear a TP-Link: 'non ...
GoldenEye 007: dopo oltre 20 anni, &egra...
Snowflake arricchisce le funzionalit&agr...
American Express pronta ad acquisire The...
Batterie liquide senza metalli: scoperto...
FRITZ!, devolo, LANCOM e TDT danno vita ...
Quanto tempo passiamo online? In Italia ...
Fox Corporation si compra Roku per 22 mi...
AMD resuscita Zen+: due nuovi processori...
Debutto cinematografico per HONOR Robot ...
Copilot+ PC, ogni PC con una GPU dedicat...
Dreame taglia i prezzi: come orientarsi ...
L'Italia entra nell'era dei 2 nanometri!...
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: 22:38.


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