Powershell, leggere parametri da file

luca 11/01/2012 0

Il seguente snippet nasce dalla richiesta di un amico: per automatizzare una attività aveva la necessità eseguire più volte un comando, leggendo i singoli parametri da un file di testo in formato CSV (campi separati da virgola).

Il file parameters.csv contiene le seguenti informazioni:

  • indirizzo IP
  • username
  • password

Ecco lo script:

$file = Get-Content "C:\parameters.csv"
 
foreach($row in $file) {
 
	$parameters = $row.Split(",");
	$ipaddress = $parameters[0];
	$username = $parameters[1];
	$password = $parameters[2];
 
	echo "Ip address: $ipaddress`tusername: $username`tpassword: $password";
}

Il cmdlet Get-Content restituisce un array contenente le singole righe del file. Il successivo ciclo foreach viene eseguito per ogni elemento di tale array e – ad ogni esecuzione – memorizza nella variabile $row una riga del file.

Il metodo Split dell’oggetto string divide la stringa in elementi utilizzando come separatore il carattere (in questo caso la virgola) passato come parametro e restituisce un array contenente i vari elementi.

Infine i singoli elementi sono memorizzati in variabili (il primo elemento di un array ha indice 0) e il loro contenuto viene stampato a video:

Leave A Response »

Questo sito usa i cookie per poterti offrire una migliore esperienza di navigazione maggiori informazioni

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi