Kadang-kadang saya lupa bagaimana sintaks yang tepat dari perintah CMD terlihat dan kemudian saya ingin mencari sejarah CMD saya sendiri. Jelas, dalam sesi yang sama, Anda dapat menjelajahinya dengan tombol panah atas dan bawah, tetapi bagaimana dengan riwayat sesi CMD sebelumnya? Apakah ada file, log yang sejarahnya dituliskan atau apakah semuanya menuju ke Nirvana digital?
Terima kasih!
windows
windows-command-prompt
history
command
raoulsson
sumber
sumber
doskey exit=doskey /history ^>^> C:\path\to\cmdhistory.log $T exit $*
tetapi Anda harus mencari cara untuk mengeksekusi ini secara otomatis pada setiap sesi prompt perintah startup. PS: Pastikan path file log dapat ditulisi.C:\
tidak dapat ditulisi untuk prompt perintah non-admin.Jawaban:
Tidak, riwayat prompt perintah Windows tidak dapat disimpan saat sesi berakhir.
sumber
doskey.exe /history
(di situlah pintasan F7 berasal, BTW) tetapi tidak ada cara untuk memuatnya kembali di sesi berikutnya.Tidak secara native tetapi periksa: http://mridgers.github.io/clink/ , membuat cmd.exe jauh lebih produktif. Mengutip fitur dari halaman proyek:
sumber
~/.inputrc
kapan menggunakan denting? (dan tahukah Anda apakah itu dapat digunakan Konsol atau apa?)clink
membencidoskey
; lupakan semua alias bertahun-tahun Anda dan ditugaskan dengan cermat. itu sebabnya saya berhenti untuk menggunakannya. meskipun saya kehilangan semua fitur.Massimo benar bahwa riwayat prompt perintah Anda tidak bertahan di seluruh sesi. Anda bisa mengambil ini secara manual sebelum menutup prompt Anda dengan mengetikkan doskey / history> history.txt
Atau ... Anda bisa menggunakan PowerShell sebagai prompt CMD Anda, dan ikuti posting ini untuk mempertahankan riwayat Anda di seluruh sesi.
sumber
Anda dapat menggunakan denting .
Cara termudah untuk menginstal denting menggunakan cokelat . Setelah Anda menginstal cokelat, Anda dapat menginstal denting dengan mengetik
Mulai dari waktu berikutnya Anda memulai cmd.exe, harus menyimpan riwayat di seluruh sesi.
sumber
Chocolatey
mencoba karena posting ini. Instalasi semudahbrew
di macOS. Dan sekarang saya memiliki command prompt Bash-like di Windows!Dimungkinkan untuk menyimpan riwayat saat ini ke file,
Tapi sepertinya tidak ada cara untuk memuatnya kembali sebagai sejarah. Mungkin hanya menggunakan argumen baris perintah untuk memuat dan mengeksekusi semua baris,
cmd.exe /K somefile.txt
, apa yang bisa berguna untuk memuat daftar makro doskey. Doa ini dapat dimasukkan dalam pintasan sehingga Anda tidak perlu mengetiknya setiap kali; referensi ini memiliki beberapa info tambahan tentang pendekatan ini .
Ada pertanyaan serupa tentang Superuser yang membawa beberapa alternatif, termasuk denting , seperti yang disarankan oleh @RobertBak.
sumber
Command History: Untuk mengaktifkan histori perintah (yang dapat diakses menggunakan tombol panah atas dan bawah) cukup jalankan doskey pada prompt perintah. Misalnya, untuk membuat sejarah perintah 100 elemen:
ref: https://users.cs.jmu.edu/bernstdh/web/common/help/ntshell.php
sumber
denting bagus dan penulis menerbitkan paket cokelat di setiap rilis, namun saya sarankan DeepBlueCLI.
Anda dapat menggunakan https://github.com/sans-blue-team/DeepBlueCLI untuk mengatur Windows Security Event ID 4688.
Untuk PowerShell, DeepBlueCLI juga menggunakan pencatatan modul (PowerShell event 4013) dan pencatatan blok skrip (4104). Itu tidak menggunakan transkripsi.
Manfaat tambahan adalah bahwa ia mencatat hash dari baris perintah exe di log peristiwa AppLocker. Sumber: https://docs.microsoft.com/en-us/windows-server/identity/ad-ds/manage/component-updates/command-line-process-auditing
Selain itu, karena solusi ini menggunakan infrastruktur Windows Event Log, Anda dapat menanyakannya melalui WMI atau PowerShell
Get-EventLog
. Dengan denting, Anda harus mempelajari alat lain untuk mendeteksi pola perilaku sistem atau jaringan.sumber