2010. 8. 11. 17:36
안녕하세요? 윈디안입니다.
오늘 포스팅을 2개나 하네요.
밀린 숙제하는 것 같아 마음이 편하지 않네요.
다음 부터는 게으르지 않기로 다시 한번 마음을 잡아 봅니다.(과연?)
이번에 말씀드리고자 하는 것은 파워쉘의 히스토리입니다.
파워쉘에는 과거 cmdlet을 보여주는 히스토리 기능이 있습니다.
위 cmdlet을 통해서 입력 히스토리를 볼 수 있죠.
예제를 보죠
디렉터리: C:\Users
Path Owner Access
---- ----- ------
windian7.SDS NT AUTHORITY\SYSTEM NT AUTHORITY\SYSTEM Allow FullContr...
PS C:\Users\windian7.SDS> Get-History
PS C:\Users\windian7.SDS>
1번 get-history는 아무런 결과가 없습니다. history가 없으니 결과가 없겠죠?
마지막 Get-History를 보면 시간 순서에 따라 get-history,멍청이,거지,get-acl등 모든 cmdlet을 확인할 수 있습니다.
그러나 이 history 기능이 완벽한 것은 아닙니다.
PowerShell을 종료하면 모든 히스토리가 삭제됩니다.
그러면 이를 유지할 수 있는 방법은 없을까요?
물론 있습니다. 그러니 제가 포스팅을 하는 것이 겠지요...
방법은 간단합니다. xml로 history를 내보내기한 후 다시 가져오기 하는 것 입니다.
2가지만 기억하세요. 내보내기,가져오기...
xml로 history 내보내기 - Export history
Add-History xml파일 가져오기 - Import history
PS C:\Users\windian7.SDS>
오늘 포스팅을 2개나 하네요.
밀린 숙제하는 것 같아 마음이 편하지 않네요.
다음 부터는 게으르지 않기로 다시 한번 마음을 잡아 봅니다.(과연?)
이번에 말씀드리고자 하는 것은 파워쉘의 히스토리입니다.
파워쉘에는 과거 cmdlet을 보여주는 히스토리 기능이 있습니다.
Get-History
위 cmdlet을 통해서 입력 히스토리를 볼 수 있죠.
예제를 보죠
PS C:\Users\windian7.SDS> get-history
PS C:\Users\windian7.SDS> 멍청이
'멍청이' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확
인하고 경로가 포함된 경우 경로가 올바른지 확인한 다음 다시 시도하십시오.
위치 줄:1 문자:4
+ 멍청이 <<<<
+ CategoryInfo : ObjectNotFound: (멍청이:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PS C:\Users\windian7.SDS> 멍청이
'멍청이' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확
인하고 경로가 포함된 경우 경로가 올바른지 확인한 다음 다시 시도하십시오.
위치 줄:1 문자:4
+ 멍청이 <<<<
+ CategoryInfo : ObjectNotFound: (멍청이:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PS C:\Users\windian7.SDS> 거지
'거지' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인
하고 경로가 포함된 경우 경로가 올바른지 확인한 다음 다시 시도하십시오.
위치 줄:1 문자:3
+ 거지 <<<<
+ CategoryInfo : ObjectNotFound: (거지:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
'거지' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인
하고 경로가 포함된 경우 경로가 올바른지 확인한 다음 다시 시도하십시오.
위치 줄:1 문자:3
+ 거지 <<<<
+ CategoryInfo : ObjectNotFound: (거지:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PS C:\Users\windian7.SDS> Get-Acl
디렉터리: C:\Users
Path Owner Access
---- ----- ------
windian7.SDS NT AUTHORITY\SYSTEM NT AUTHORITY\SYSTEM Allow FullContr...
PS C:\Users\windian7.SDS> Get-History
Id CommandLine
-- -----------
1 get-history
2 멍청이
3 거지
4 Get-Acl
-- -----------
1 get-history
2 멍청이
3 거지
4 Get-Acl
PS C:\Users\windian7.SDS>
1번 get-history는 아무런 결과가 없습니다. history가 없으니 결과가 없겠죠?
마지막 Get-History를 보면 시간 순서에 따라 get-history,멍청이,거지,get-acl등 모든 cmdlet을 확인할 수 있습니다.
그러나 이 history 기능이 완벽한 것은 아닙니다.
PowerShell을 종료하면 모든 히스토리가 삭제됩니다.
그러면 이를 유지할 수 있는 방법은 없을까요?
물론 있습니다. 그러니 제가 포스팅을 하는 것이 겠지요...
방법은 간단합니다. xml로 history를 내보내기한 후 다시 가져오기 하는 것 입니다.
2가지만 기억하세요. 내보내기,가져오기...
xml로 history 내보내기 - Export history
Get-History | Export-Clixml "파일경로\파일명.xml"
Add-History xml파일 가져오기 - Import history
Import-Clixml "파일경로\파일명.xml" | Add-History
"C:\history.xml"을 만들어 위 예제 파일을 가지고 왔습니다.
내보내기
PS C:\Users\windian7.SDS> Get-History | Export-Clixml "c:\history.xml"
가져오기
PS C:\Users\windian7.SDS> history
PS C:\Users\windian7.SDS> Import-Clixml "c:\history.xml" | Add-History
PS C:\Users\windian7.SDS> history
PS C:\Users\windian7.SDS> Import-Clixml "c:\history.xml" | Add-History
PS C:\Users\windian7.SDS> history
Id CommandLine
-- -----------
1 history
2 Import-Clixml "c:\history.xml" | Add-History
3 get-history
4 멍청이
5 거지
6 Get-Acl
7 Get-History
-- -----------
1 history
2 Import-Clixml "c:\history.xml" | Add-History
3 get-history
4 멍청이
5 거지
6 Get-Acl
7 Get-History
PS C:\Users\windian7.SDS>
Import를 한 데이터가 history에 등록되어 있는 것을 볼 수 있습니다.
응용할 수 있는 방법은 여러가지가 있겠지만
"프로필에 등록하여 작업 로그 형태로 사용할 수 있지 않을까?"라는 생각을 해봤습니다.
다른 머신에서도 이를 통해 history를 유지할 수 있겠군요.
이번 포스팅은 여기까지입니다.
감사합니다.
참고 링크 : Using the Add-History Cmdlet
http://technet.microsoft.com/ko-kr/library/ee156792(en-us).aspx
'Powershell > 윈디안' 카테고리의 다른 글
파워쉘상에서 키보드 입력 받기 (0) | 2010.09.08 |
---|---|
About PowerShell Pack !!! (7) | 2010.08.25 |
PowerShell 비교연산자[比較演算子] 'comparison operator' (0) | 2010.08.11 |
재미있는 파워쉘 스냅인 소개! WASP(Windows Automation Snapin for Powershell) (3) | 2010.07.22 |
Windows 2008 R2 Server Core에서 파워쉘 사용하기(Sconfig.exe) (0) | 2010.07.16 |