Variabili
Le Variabili sono aree temporanee a cui si può assegnare dei valori, che si possono poi usare in un secondo tempo negli Scripts.
Se ci si riferisce ad una variabile, e questa non esiste, si avrà in ritorno il valore $null. Il valore $null può essere usato in comparazioni con if-then-else per controllare le diramazioni.
I seguenti comandi permettono di creare e settare valori di varaibili.
/set [-snzuN] <%var> [valore]
Questo imposta il valore di %var al valore specificato.
Se si specifica il parametro -uN, %var verrà annullata dopo N secondi, presumendo che non sarà settata di nuovo da un altro script. Se si specifica N=0, la variabile sarà annullata quando lo script termina.
Il parametro -z decrementa %var finchè non raggiunge zero, e poi la annulla.
Il parametro -n fa si che venga trattata come testo.
/unset [-s] <%var>
Questo annulla e rimuove la variabile indicata dalla lista delle variabili. Se si specifica una variabile con caratteri wildcard allora tutte le varibili corrispondenti verranno rimosse.
/unset %test*
Questo rimuoverà tutte le varibili che iniziano con la parola %test.
E' anche possibile settare/desettare variabili usando le parentesi [ ]:
vartest
set %a [ $+ b ] 1
set %a [ $+ c ] 2
set %a [ $+ d ] 3
echo ab = %ab
echo ac = %ac
echo ad = %ad
unset %a [ $+ b ] %a [ $+ c ] %a [ $+ d ]
/unsetall
Questo annulla e rimuove tutte le varibili dalla lista.
/inc [-cszuN] <%var> [valore]
Questo incrementa il valore di %var di [valore]
Se si specificano i parametri -uN, %var sarà incrementata del valore specificato una volta e poi sarà annullata dopo N secondi, presumendo che non sarà settata di nuovo da un altro script.
Il parametro -c incrementa %var 1 volta al secondo.
Il parametro -z decrementa %var finchè non raggiunge zero, e poi la annulla.
/dec [-cszuN] <%var> [valore]
Questo decrementa il valore di %var di [valore]
Se si specificano i parametri -uN, %var sarà incrementata del valore specificato una volta e poi sarà annullata dopo N secondi, presumendo che non sarà settata di nuovo da un altro script.
Il parametro -c decrementa %var 1 volta al secondo.
Il parametro -z decrementa %var finchè non raggiunge zero, e poi la annulla.
E' possibile utilizzare anche il segno di uguale per assegnare valori alle variabili:
%i = 5
%xyzi = 3.14159
%count = $1
E' anche possibile eseguire le seguenti operazioni sulle varibili quando si usa il segno di uguale:
%x = 5 + 1
%x = 5 - %y
%x = %x * 2
%x = %z / $2
%x = $1 % 3
%x = 2 ^ %w
E' possibile eseguire una sola operazione per volta.
Si può utilizzare l'identificatore $calc() che permette di eseguire calcoli complessi.
//echo 1 $calc(3.14159 * (2 ^ %x % 3) - ($ticks / (10000 + 1)))
Si possono utilizzare inoltre anche gli identificatori $round(N,D) e $int(N) per maneggiare con precisione numeri che hanno decimali. Il numero dei decimali è attualmente limitato a 5 cifre.
Variabili Locali
Le variabili locali sono variabili che esistono solo per la durata della sessione di uso dello script, nella quale possono essere create e possono essere accessibili solo da dentro lo script. Per crearle si utilizza il comando /var:
/var %x
Questo crea la varibile locale %x nella routine corrente e può essere utilizzata solo in questa routine.
/var %x = ciao
Questo crea la varibile locale %x e gli assegna il valore ciao.
Si possono creare più variabili locali separandole con virgole:
/var %x = ciao, %y, %z = $me
loop
var %x = 1
:next
echo item %x
inc %x
if (%x < 10) goto next
Nota: si può utilizzare /var -s per far si che la varibile mostri il risultato quando un valore viene impostato.
Identificatori
$var(%var,N)
Ritorna nome della variabile combaciante numero N.
Proprietà: valore, locale
Si può utilizzare una wildcard come nome della variabile.
Se N = 0, ritorna il numero toale di nomi di variabili combacianti.
Nota: Questo cerca sia tra variabili locali che tra variabili globali.
Nessun commento:
Posta un commento