2016-09-07 4 views
0

명령의 각 출력 행 앞에 시간 소인을 추가하려고합니다. 예를 들어명령 또는 실행 파일의 각 출력 행에 시간 소인을 붙입니다.

foo 
bar 
baz 

가 될 것이다 : 시간이되는 접두사

[2011-12-13 12:20:38] foo 
[2011-12-13 12:21:32] bar 
[2011-12-13 12:22:20] baz 

라인이 인쇄 된 시간이다. PowerShell로 어떻게 이것을 할 수 있습니까?

foo | ForEach-Object { "$(Get-Date -Format "[yyyy-MM-dd HH:mm:ss]") $_" }

+0

질문에 대한 이유가 확실하지 않은 이유는 확실하지 않습니다. 당신은 내 +1을가집니다. – avakar

+0

@avakar 나는 그것을 downvoted; 하향 화살표 위로 마우스를 가져 가면 툴팁 팝업은 하향 투표가 연구 노력을 표시하지 않는 질문에 대한 것임을 나타냅니다. "나는 X가 필요하다"는 진술 만하는 질문은 사이트의 디자인이기 때문에 내가 논평하거나 대답하려고하는지에 관계없이 거의 항상 내게 하향 투표를 받는다. – TessellatingHeckler

답변

4

당신이 파이프 그건 foreach는 객체를 통해 출력이 타임 스탬프를 추가 할 수 foo라는 외부 명령입니다

x.exe |Select @{Name='XTime';Expression={"[$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')] $_"}} 
1

당신은 같은 뭔가 그것을 명명 된 열을 만들 수 있습니다 : 당신의 명령을 가정

+1

'hh' 대신'HH'가되어야하고, 후자는 12 시간제입니다. – avakar