Ho pochissima esperienza con i vecchi batch file del dos ma mi rendo conto che sono spesso utilissimi per automatizzare piccoli (e grandi) task.
E’ possibile passare parametri a riga di comando ad un file batch come a qualsiasi altro eseguibile.
Il file batch può accedere ai parametri passati a riga di comando attraverso la sintassi:
%n
dove n è un numero che indica la posizione del parametro sulla riga di comando.
%0 si riferisce al comando batch stesso, da %1 in poi ci si riferisce ai suoi parametri.
E’ possibile applicare particolari “trasformazioni” ai parametri passati dette “sostituzioni”.
E’ possibile ottenere l’elenco delle sostituzioni con il comando:
call /?
Di seguito un riassunto delle sostituzioni possibili:
%~1 |
sostituisce il parametro %1 rimuovendo le virgolette; |
%~f1 |
sostituisce il parametro %1 con il percorso completo; |
%~d1 |
sostituisce il parametro %1 con la lettera di unità; |
%~p1 |
sostituisce il parametro %1 con il solo percorso; |
%~n1 |
sostituisce il parametro %1 con il nome del file; |
%~x1 |
sostituisce il parametro %1 con la sola estensione del file; |
%~s1 |
sostituisce il parametro %1 con i nomi brevi; |
%~a1 |
sostituisce il parametro %1 con gli attributi del file; |
%~t1 |
sostituisce il parametro %1 con la data e ora del file; |
%~z1 |
sostituisce il parametro %1 con la dimensione del file; |
E’ possibile combinare i modificatori per ottenere risultati composti, qualche esempio:
%~dp0 sostituisce il comando con la sua lettera di unità e il suo percorso;
%~dp1 sostituisce il primo parametro con la sua lettera di unità e il suo percorso;
%~nx0 estrae il nome del comando batch completo di estensione;
%~snx1 sostituisce il primo parametro con il nome nel formato breve;
Potete scaricare da qui un file batch di esempio che riassume le varie sostituzioni possibili.
Fonte: http://www.sgart.it/Page/default.asp?id=30&e=207
Technorati Tag:
msdos,
batchfiles