C'è un modo per mantenere la cronologia dei comandi cmd tra le sessioni?
C'è un modo per mantenere la cronologia dei comandi cmd tra le sessioni?
Risposte:
Passare a utilizzare PowerShell e seguire le istruzioni nel sito seguente per abilitare la cronologia:
In alternativa, in cmd.exe, è possibile utilizzare "doskey / history" alla fine della sessione per mostrare ciò che è stato digitato in quella sessione, ma non c'è modo di caricarlo realmente nella sessione successiva.
Ho trovato 2 modi, nessuno dei quali richiede il passaggio a PowerShell.
cmd.exe
ma è una buona risposta, e il tintinnio supporta anche una modalità di iniezione.
cmd
con esso, nessun problema, molto soddisfatto.
Il salvataggio della cronologia è un piccolo flusso di lavoro: ecco un modo meno "pesante" per farlo (niente librerie esterne).
Crea un file bat / cmd per impostare la tua cronologia, in questo caso l'ho chiamato MyEnvironment.cmd:
doskey save=doskey /history $g$g C:\CmdHistory.log
doskey quit=doskey /history $g$g C:\CmdHistory.log $T exit
doskey history=find /I "$*" C:\CmdHistory.log
cls
Quindi esegui questo da "Start-> Esegui" (puoi anche impostare un alias anche per questo):
cmd.exe /K C:\MyEnvironment.cmd
Ogni volta che chiudo una sessione premo "esci" - o se ho paura di perdere la cronologia a metà sessione premo "salva". Se voglio chiedere qualcosa nella storia, premo semplicemente "cronologia PAROLA CHIAVE".
Per il commento di @ dave_thompson_085, la AutoRun
funzione funziona bene se non si desidera utilizzare l' /K
opzione. Se la chiave di registro è stata impostata correttamente, non è necessario che sia presente .cmd
o .bat
meno %AppData%
, può trovarsi nella stessa posizione in cui si trova già.
Se si utilizza la %AppData%
posizione, tenere presente che cmd probabilmente cercherà il file batch nella cartella "Roaming" (anziché nella radice AppData).
Maggiori informazioni sulla AutoRun
funzione CMD: https://superuser.com/a/302553/333316
$g
inserisce a >
ed $t
è un separatore di comandi.
>
e &&
caratteri direttamente nell'alias doskey?
doskey quit=doskey /history
e salvare l'output della creazione della macro in un file di log (niente o un errore); poi chiudi la finestra (scartando tutto). -Potresti sfuggire a quei personaggi con un ^
invece, credo. Come ^>^>
e ^&
(... e sì, hai solo bisogno di una e commerciale)