2012-02-16 5 views
2

Powershell에서이 작업을 수행 할 수 있는지 궁금합니다.PowerShell 기록을 PowerShell 종료의 텍스트 파일에 쓸 수 있습니까?

출력 파일 명령을 사용하면 파일을 출력하여 출력 할 수 있습니다. 그렇게하면 모든 내역 명령을 텍스트 파일로 보낼 수 있습니다.

질문 끝낼 때마다 내 기록 명령을 텍스트 파일로 보낼 수 있습니까?
이것이 큰 도움이 될지 모르겠지만 가끔 한 라이너를 쓴 다음 PS 콘솔을 실수로 종료하면 모든 채팅 기록이 최근 채팅 대화처럼 텍스트 파일에 저장됩니다.

+1

여기를보십시오 : http://social.technet.microsoft.com/Forums/en-US/winserverpowershell/thread/573c1870-5e31-43a1-a863-3f2ebed418df 콘솔을 잡는 것이 어려운 임무 인 것 같습니다. 'x'를 클릭하여 닫습니다. –

+0

이 게시물을 확인하십시오 : http://www.nivot.org/post/2009/08/15/PowerShell20PersistingCommandHistory.aspx –

답변

3

$ profile에 start-transcript -path .\console.txt -append을 사용하면 H뿐 아니라 모든 콘솔 작업을 txt 파일에 포함 할 수 있습니다. istory하지만 명령의 반환도.

+0

정말 재미있을 것 같습니다. 나는 Get-Help를했고 그것은 "텍스트 파일에 Windows PS 세션 전체 또는 당사자의 기록을 만듭니다"라고 말합니다. – Mitul

+0

예! 귀하의 질문에 동일한 이유로 내 $ 프로필에이 명령을 사용합니다! –

+0

더 이상은 아니지만 내 프로필에 넣으면 PS를 배우기 시작했을 때 큰 도움이되었습니다. – EBGreen

1

"출구"를 항상 잡기는 어렵습니다. 그래서 액션 이벤트에 ..

Powershell profile "on exit" event?

을 당신은의 OnExit 이벤트를 등록 할 수 있지만, 문제는 사용자 유형 "출구"그들이 X 또는 기타 방법으로 가까운 충돌하지 않으면 때이 만 잡을 것입니다 당신은 get-history (기본값 100 이상을 필요로하는 경우 숫자를 지정한 다음)를 파일로 설정합니다. ...

Start-Transcript를 사용하는 것이 더 좋을 수 있지만 콘솔에서만 작동하는 것이 좋습니다. ..

+0

powershell.exiting 이벤트는 거의 쓸모가 없습니다. 이 이벤트가 발생할 때 runspace가 실제로 비동기식으로 종료되므로 임의의 후크 스크립트가 임의로 실패합니다. 고전적인 경쟁 조건. – x0n

2

또 다른 가능성 :

function start-histcap { 
clear-history 
$host.enternestedprompt() 
get-history | out-file c:\testfiles\commandhist.txt -append 
} 

실행이 histcap-시작하고 중첩 된 프롬프트 수 있습니다. 어떤 작업을하든 중첩 된 프롬프트를 종료하면 내역 파일에 기록됩니다.

관련 문제