Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di Alkaid
    Registrato dal
    Apr 2002
    Messaggi
    537

    Aiutatemi con qusto script

    questo script permette di efettuare dei test della propria connessione, quali ping, traceroute e test di velocità via http ed ftp.
    codice:
    #!/bin/bash
    
    # Test della connettività internet
    # Realizzato per il provider *********
    
    # ATTENZIONE!!
    # Prima di eseguire il programma, modifica le variabili seguenti
    
    # sito è l'indirizzo che sarà utilizzato per eseguire i ping ed il
    #  traceroute
    sito=maya.ngi.it
    
    # pingn è il numero di ping da effettuare
    pingn=30
    
    # tracert_max_hops indica il numero massimo di hop da visualizzare nel
    #  traceroute
    tracert_max_hops=20
    
    # http_download ed ftp_download sono gli indirizzi che il progrmma
    #  utilizzerà per fare i test di velocità
    http_download=http://debian.fastweb.it/debian/ls-lR.gz
    ftp_download=ftp://debian.fastweb.it/debian/ls-lR.gz
    
    # routerip deve essere impostato all'indirizzo del tuo router in modo
    #  che venga mascherato nel traceroute. Se non hai un router, lascia
    #  questa variabile al valore predefinito
    routerip='192.168.0.1'
    
    # publicip deve essere impostato con i tuoi indirizzi pubblici, sempre
    #  con il fine di mascherarli nel traceroute. Modifica il valore in
    #  modo che corrisponda agli indirizzi a te assegnati. Questa è una
    #  espressione regolare: tra le parentesi graffe, separati da virgola,
    #  inserisci tutti gli indirizzi ip che hai a disposizione, così se
    #  verranno trovati nel traceroute, saranno tutti mascherati.
    publicip='192.42.67.{57,58,59,60,61,62}'
    
    if [ $pingn -lt 20 ]; then
        echo Il test non è efficace con meno di 20 ping...
        exit 1
    fi
    
    echo 
    
    codice:
    Test *****
    echo Sito : $sito
    echo Data : $(date)
    
    echo '*************************************************'
    
    ping -c $pingn $sito | sed -e "6,$[$pingn - 5]d" -e "5a\
    ...
    "
    
    echo '*************************************************'
    
    traceroute -m $tracert_max_hops -n $sito | \
        sed -e "s/$routerip/myFirewall/g" -e "s/$publicip/myPublicIP/g"
    
    echo '*************************************************'
    
    echo Download di $http_download completato alla velocità di $(wget -O /dev/null $http_download 2>&1 | sed -n -re 's:^.*\(([^)]+/s)\).*$:\1:p')
    
    echo Download di $ftp_download completato alla velocità di $(wget --passive-ftp -O /dev/null $ftp_download 2>&1 | sed -n -re 's:^.*\(([^)]+/s)\).*$:\1:p')
    
    echo '*************************************************
    '
    alla riga ove è riportato publicip='192.42.67.{57,58,59,60,61,62}' vorrei comprendere quei 6 numeri ip in modo che vengano sostituiti da myPublicIP per ovvi motivi, ma non riesco ad inserire il range di ip
    cosa sbaglio? ho già provato con le parentesi []
    grazie.

  2. #2
    Utente di HTML.it L'avatar di Alkaid
    Registrato dal
    Apr 2002
    Messaggi
    537
    A chi interessasse....
    la sintassi corretta è

    publicip='192.168.0.\(1\|2\|3\|4\|5\|6\|7\|8\)'

Permessi di invio

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