记录cmd.exe的命令行

时间:2019-03-22 09:25:21

标签: powershell cmd command-line-interface

我需要记录一些在 Windows 上的 cmd.exe 程序中键入的命令行输入。我是通过 powershell 进程启动它的,所以我尝试使用here解释的方法:

PS (location)> cmd.exe | Tee-Object -file Cmd.exe.log

距离越来越近,但我需要得到这个...

  • 如何仅记录键入的命令,而不记录输出?

  • 如何查看提示光标,如何保持用键盘调用前面的命令时抛出的“箭头”特殊命令?

1 个答案:

答案 0 :(得分:0)

Start-Trascript记录您输入的所有命令。官方文档中的更多内容:https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.host/start-transcript?view=powershell-6

示例跟踪的完整输出为

**********************
Windows PowerShell transcript start
Start time: 20190322104506
Username: DOMAIN\user
RunAs User: DOMAIN\user
Configuration Name: 
Machine: MAICHINE_NAME (Microsoft Windows NT 10.0.17763.0)
Host Application: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Process ID: 31428
PSVersion: 5.1.17763.316
PSEdition: Desktop
PSCompatibleVersions: 1.0, 2.0, 3.0, 4.0, 5.0, 5.1.17763.316
BuildVersion: 10.0.17763.316
CLRVersion: 4.0.30319.42000
WSManStackVersion: 3.0
PSRemotingProtocolVersion: 2.3
SerializationVersion: 1.1.0.1
**********************
Transcript started, output file is C:\transcripts\transcript0.txt

C:\projects\> ls


    Directory: C:\projects\


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       03/01/2019     16:07                X
d-----       18/02/2019     16:56                Y
d-----       21/03/2019     15:49                Z
d-----       22/03/2018     16:17                T


C:\projects\> cat .\paket.lock
STORAGE: NONE

C:\projects\> Stop-Transcript
**********************
Windows PowerShell transcript end
End time: 20190322104539
**********************