DOSKEY
(da Disk Operating System Key)
Modifica le impostazioni di riga di comando o per il richiamo dei comandi di Windows e crea macro.
Sintassi:
DOSKEY [/REINSTALL] [/LISTSIZE=dim.] [/MACROS[:ALL | :nome_exe]] [/HISTORY] [/INSERT | /OVERSTRIKE] [/EXENAME=nome_exe] [/MACROFILE=nomefile] [nome_macro=[testo]]
Dove:
/REINSTALL
- ReimpostaDOSKEY
, eliminando tutta la cronologia dei comandi e disattivando la sovrascrittura del testo./LISTSIZE=dim.
- Imposta la dimensione del buffer dei comandi, cioè il numero massimo di comandi che possono venire memorizzati per poter essere richiamati./MACROS
- Visualizza tutte le macro diDOSKEY
./MACROS:ALL
- Visualizza tutte le macro diDOSKEY
per tutti i file eseguibili che hanno macro diDOSKEY
./MACROS:nome_exe
- Visualizza tutte le macro diDOSKEY
per il file indicato./HISTORY
- Visualizza tutti i comandi memorizzati./INSERT
- Disabilita la sovrascrittura del testo sulla riga di comando, ovvero i caratteri inseriti in mezzo a una stringa vengono aggiunti a quelli esistenti invece che sostituirli./OVERSTRIKE
- Abilita la sovrascrittura del testo sulla riga di comando./EXENAME=nome_exe
- Specifica il file eseguibile./MACROFILE=nomefile
- Specifica il file di macro da installare.nome_macro
- Specifica il nome della macro che si vuole creare.testo
- Specifica i comandi che si vogliono memorizzare nella macro. Se non specificato, elimina la macro chiamatanome_macro
.
Nella definizione di una macro DOSKEY
, è possibile usare i seguenti codici:
$G
- Simbolo di maggiore>
(per la scrittura su file output, ad esempio$G$G
aggiunge una riga alla fine del file).$L
- Simbolo di minore<
(per la lettura da file di input).$T
- Separatore di comandi. Consente comandi multipli in una macro.$1-$9
- ArgomentiDOSKEY
, equivalenti a%1-%9
in programmi batch. Vedi SHIFTSHIFT.$*
- Simbolo sostituito da ciò che segue il nome della macro sulla riga di comando.
Esempi:
1. Visualizza tutti i comandi memorizzati della finestra del prompt dei comandi corrente:
doskey /history
2. Visualizza tutte le macro DOSKEY
per il file C:\siufboasbofbaisrnoofnasr.exe
:
doskey /macros /exename="C:\siufboasbofbaisrnoofnasr.exe"
3. Dopo aver installato una macro, nello stesso prompt è possibile usarla al posto del comando specificato. Ad esempio, se scrivo (vedi DEL o ERASEDEL o ERASE):
doskey ciccio=del "C:\a.txt"
significa che se (nello stesso prompt) scrivo CICCIO
, verrà eliminato il file C:\a.txt
.
4. Definisce la macro ECHONE
, che visualizza la stringa specificata seguita da un punto esclamativo (vedi ECHOECHO):
doskey echone=echo $*!
echone ciao bello
che visualizzerà:
ciao bello!
5. Crea la macro KONG
, la quale, quando eseguita, dopo aver salutato l'utente ed essersi simpaticamente presentata, provvederà a inserire la stringa banana
alla fine di ogni file della cartella corrente (cfr. FORFOR):
doskey kong=@echo Ciao a tutti, sono Doskey Kong! Sono quello scimmione che ti ficchera' la sua banana dentro ogni tuo file senza alcuna pieta'! $T @for %a in (*.*) do @(echo banana $G$G %a)
Approfondimento:
Per richiamare i comandi da linea di comando, è possibile usare le frecce su e giù: questo permette di selezionare uno tra gli ultimi comandi digitati sul prompt. Digitando F7 viene visualizzata una schermata con la cronologia dei comandi con i relativi indici, che si possono selezionare usando le frecce; digitando F9 compare invece una schermata nella quale si chiede di inserire l'indice associato al comando da richiamare. Digitando F8 si percorre la cronologia dei comandi dall'inizio del buffer invece che dalla fine (come succede invece se si usano le frecce). Infine, il tasto ESC può essere usato per chiudere le schermate delle cronologie dei comandi o per cancellare il contenuto della riga di comando.
La combinazione di tasti Alt + F7 si può usare per cancellare la cronologia dei comandi (simile a DOSKEY /REINSTALL
, ma senza reimpostare la modalità di sovrascrittura), mentre Alt + F10 cancellerà le macro create (quest'ultima funzione non è supportata nelle ultime versioni di Windows).
Commenti