2013-07-19 2 views
0

사용자, 프린터, 응용 프로그램, 설정 변경 등을 추가하는 Powershell 스크립트를 작성하여 Windows 7 PC를 "빌드"합니다. PNPUtil을 사용하는 일부 프린터 드라이버를 추가하고 있지만 문제는 "게시 된 이름"에 드라이버가 제공되는지 알 수 없다는 것입니다. 내가 .txt 파일로 PNPUtil 명령의 출력을 넣으면Powershell 파일에서 문자열을 가져 와서 변수에 넣는 방법

, 다음 걸릴하는 방법이 있습니까 인 _ _ 게시 이름 한 .inf 및 것은 변수에 넣어 그때 할 수 있도록 이 이름을 사용하여 $ printerclass.CreateInstance()를 사용하여 프린터를 추가 할 수 있습니까?

답변

2

당신은 PNPUtil 만에 관심이 이름을 출력하는 경우 파일을 사용할 필요가 없습니다 즉, 당신과 같이 변수에 출력을 할당 할 수있다 :.

$result = pnputil.exe 

을 BTW 사용하려는 경우 파일이, 당신이 사용하는 파일에서 내용을 읽을 수있는 GET-내용 : 좋아

pnputil.exe > result.txt 
$result = Get-Content result.txt 
$line = $result | Foreach {if ($_ -match 'assigned an (\w+\.inf)') {$matches[1]}} 
+0

감사합니다. 키이스 - 가까이와. 다음은 PNP 명령 출력을 추가 할 것입니다 - "마이크로 소프트의 PnP 유틸리티 처리 INF :. AW3N_64PPD.INF 드라이버 패키지가 성공적으로 추가를 게시 이름 : 총 시도 oem231.inf : 1 개 번호가 성공적으로 가져 : 1" "000"이 숫자 인 "oem000.inf"가 항상 할당됩니다. 그래서 "oem ___. inf"를 가져 와서 변수에 넣어야합니다. 그래서 내가 출력을 .txt 파일로 파이프하고 "oem * .inf"를 찾을 수 있다고 생각했습니다. – BigRedEO

+0

죄송합니다 - 주석은 파일의 모양을 생략합니다. 거기에는 몇 개의 빈 줄이 있습니다. – BigRedEO

+0

오케이 - 내 솔루션을 찾았습니다. 일단 .inf 파일을 추가하면 드라이버 이름이 Microsoft 업데이트 파일에 저장됩니다. 프린터를 추가하기 위해 각 .inf 파일에서 필요한 드라이버의 구체적인 이름을 알아야합니다. ............ 그러나 Powershell을 사용하여 파일에서 한 줄의 문자열을 가져 오는 방법을 알고 싶습니다. – BigRedEO

0

- 난 내 자신의 해결책을 발견 : .inf 파일이 추가되면,에 저장됩니다 .INF 점에서 모든 드라이버 이름 Microsoft 업데이트 파일. 프린터를 추가하기 위해 각 .inf 파일에서 필요한 드라이버의 구체적인 이름을 알아야합니다.

그러나 Powershell을 사용하여 파일에서 한 줄의 문자열을 얻는 방법을 알고 싶습니다.