본문 바로가기

파워쉘

(21)
[파워쉘] InternetExplorer.Application에서 headers 세팅 InternetExplorer.Application의 Navigate2 메소드 사용 시 동시에 여러가지 헤더를 세팅해야 할 경우가 있다. 1. user-agent를 iOS6으로 세팅 User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.252. post 형식으로 데이터를 넘긴다고 세팅 Content-Type: application/x-www-form-urlencoded 이 경우 다음과 같이 스크립팅하면 해결된다. $header = "User-Agent:Mozilla/5.0 (iPhone; CPU iPho..
[파워쉘] 특정 태그 밑에 새로운 노드 추가하기 테스트로 태그 밑에 태그를 추가하는 스크립트를 만들어보았다. 특이한 점은 아래와 같은 부분이다.$meta | %{$_.name='user-agent'}$meta | %{$_.content='User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) 처음에 member들을 조회해 보았을 때 name이나 content가 없었으나 그냥 이렇게 해 보았더니 자동으로 추가가 되었다. 물론 오류 없이 말이다. 나중에 를 찍어보니 제대로 제일 마지막에 가 추가되어 있었다. $head = $ie.Document.getElementsByTagName('head')#아래 코드는 계속 오류가 난다.#파워쉘에서는 innerHTML에 직접 추가는 못 하는가 보다.#$he..
[파워쉘] InternetExplorer.Application의 멤버들 PS D:\내문서\ifunsBackup\BahaWork_iPhone> $ie | %{ $_ | Get-Member } TypeName: System.__ComObject#{d30c1661-cdaf-11d0-8a3e-00c04fc9e26e} Name MemberType Definition---- ---------- ----------ClientToWindow Method void ClientToWindow (int, int)ExecWB Method void ExecWB (OLECMDID, OLECMDEXECOPT, Variant, Variant)GetProperty Method Variant GetProperty (string)GoBack Method void GoBack ()GoForward Method..
[파워쉘] IE UI 자동화 도구 만들기 파워쉘을 이용하여 IE UI 자동화 기능에 대해 들어본 적이 있었다.그러나 이렇게 자동화 처리를 하는 것인지는 꿈에도 생각하지 못 했다.이거는 뭐 브라우저 상에서 오토 돌리는 것 하고 완전히 동일한 수준이다. 향후 플래시나 실버라이트 기반까지 지원된다면 더 좋겠지만 요새 추세가 자바스크립트로 다 만드는 것이라,앞으로 이 기능은 여러모로 쓸모가 있어 보인다. 특히 웹 게임 쪽으로.. 흐흐흐.. 일단 먼저 ps 소스부터..(원래 접속하려던 사이트 주소는 mo-site.kr로 대체하였다.) $ua = "User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 M..
[파워쉘] 골뱅이(@, Splat 이라고 함)의 의미 굳이 해석할 필요도 없어 보인다. SplatSplatting allows the entries of a hash-table to be used in the invocation of a cmdlet - more specifically, keys become named parameters and values become input to those parameters. Here's a sample: $procs = @{name="notepad","iexplore"}get-process @procs 결과는 귀차나서.. 생략.. Of course multiple parameters can be specified at once (that's the whole point of the hashtable anyhow):..
[파워쉘] Internetexplorer.Application 사용 시 User-Agent 변경하기 파워쉘로 인터넷 익스플로러 UI 자동화 도구를 만들 수 있다는 것을 예전에 얼핏 들은 기억이 있다. 그 기능을 이용해서 모 사이트에 자동으로 회원가입하는 것을 만들어보기로 하였다. 이 사이트는 pc에서는 무조건 daum 회원 가입으로 연결된다. 그러나 모바일에서는 간단 회원가입 화면으로 연결된다. 그래서 pc에서 자동화도구를 만들기 위해서는 모바일인척 속여야 했다. 그리고 이 방법을 알아내는데 대략 4시간 정도의 서핑 끝에 아래와 같은 ps코드를 만들 수 있었다.iOS6 아이폰에서 접속하는 것으로 속이는 것이다. $ua = "User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Geck..
[파워쉘] 특정 문구가 포함된 모든 파일을 찾아서 삭제 더 좋은 방법이 있을 것 같은데 아직은 아래처럼.. ### pscd 경로$target = (get-childitem -recurse | select-string -pattern "찾고자 하는 문구 - 따옴표없이 정규식 가능" -include *.xml)foreach($_ in $target){ remove-item $_.filename }
[파워쉘] UTF-8 without BOM 인코딩으로 파일 저장 파워쉘, 아니 윈도우즈는 기본적으로 UTF-8 형태로 저장할 때 UTF-8 with BOM 으로 저장한다.그래서 그 파일이 다른 기종에서 읽혀질 때 문제가 발생할 수 있다. 필자는 iOS의 info.plist 파일때문에 이 개같은 경우를 당했다. 서핑을 해보니 아래와 같이 처리하면 된다고 함.### ps$infoPlistFile = "C:\temp\abc.txt"$infoPlistContent = "파일의 내용이다." # 파워쉘은 UTF-8 with BOM 형식으로 자동으로 저장한다.Set-Content -Path $infoPlistFile -Value $infoPlistContent -Encoding "UTF8"# 그래서 아래와 같이 다시 without BOM 처리를 해주어야 한다.$Utf8NoBomE..