반응형

PowerShell 49

PowerShell에 권장되는 코딩 스타일은 무엇입니까?

PowerShell에 권장되는 코딩 스타일은 무엇입니까? PowerShell 스크립트를 작성하는 권장 코딩 스타일이 있습니까? 코드를 어떻게 구성하느냐가 문제가 아닙니다(모듈을 사용하는 경우 기능 수 등).'어떻게 코드를 읽을 수 있게 쓰는가' 입니다. 프로그래밍 언어에는 몇 가지 권장 코딩 스타일(입체할 항목, 들여쓰기 방법 - 공백/탭, 새 줄 만들기, 중괄호 삽입 위치 등)이 있지만 PowerShell에 대한 권장 사항은 없습니다. 특히 관심이 있는 분야는 다음과 같습니다. 파라미터의 기입방법 function New-XYZItem ( [string] $ItemName , [scriptblock] $definition ) { ... ('V1' 구문에 가깝군요) 또는 function New-PSClas..

programing 2023.04.08

PowerShell 콘솔에 쓰는 방법

PowerShell 콘솔에 쓰는 방법 콘솔에 (에코)를 인쇄하는 다양한 방법에 대해 조금 혼란이 있습니다.콘솔에 출력을 쓰는 방법에는 다음과 같은 여러 가지가 있습니다. Write-Host "Hello world1" "Hello World2" Out-Host -InputObject "Hello World3" 3가지 방법 모두 콘솔에 인쇄됩니다.가운데 것은 다소 단순하고 덜 장황하고 사용하기 쉽다.또, 다음과 같은 함수를 작성할 때도, 다음과 같은 것을 알 수 있습니다. function GetValues() { "1" "2" } 그래도 파이프라인에 다음 두 개의 문자열이 반환됩니다. 그리고 나는 여전히 값을 인쇄할 수 있다: foreach ($s in GetValues) { Write-Host "s: " ..

programing 2023.04.08

PowerShell - 시작 프로세스 및 cmdline 스위치

PowerShell - 시작 프로세스 및 cmdline 스위치 난 이걸 잘 할 수 있어: $msbuild = "C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe" start-process $msbuild -wait 그러나 이 코드(아래)를 실행하면 오류가 발생합니다. $msbuild = "C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe /v:q /nologo" start-process $msbuild -wait 시작 프로세스를 사용하여 MSBuild에 매개 변수를 전달할 수 있는 방법이 있습니까?시작 프로세스를 사용하지 않는 것에 대해 개방적입니다. 이 프로세스를 사용한 유일한 이유는 "명령어"가 변수로 필요했기 때문..

programing 2023.04.08

PowerShell 스크립트에 인수를 전달하려면 어떻게 해야 합니까?

PowerShell 스크립트에 인수를 전달하려면 어떻게 해야 합니까? PowerShell 스크립트에는itunesForward.ps1iTunes를 30초 빨리 감습니다. $iTunes = New-Object -ComObject iTunes.Application if ($iTunes.playerstate -eq 1) { $iTunes.PlayerPosition = $iTunes.PlayerPosition + 30 } 이 명령어는 다음 프롬프트라인 명령어로 실행됩니다. powershell.exe itunesForward.ps1 명령줄에서 인수를 전달하여 하드코드된 30초 값이 아닌 스크립트에 적용할 수 있습니까?동작 테스트 완료: #Must be the first statement in your script ..

programing 2023.04.08

PowerShell에서 파일을 한 줄씩 스트림으로 처리하는 방법

PowerShell에서 파일을 한 줄씩 스트림으로 처리하는 방법 수 기가바이트 텍스트 파일을 사용하고 있는데 PowerShell을 사용하여 스트림 처리를 하고 싶습니다.간단한 작업입니다. 각 행을 구문 분석하여 데이터를 추출한 후 데이터베이스에 저장합니다. 불행하게도,get-content | %{ whatever($_) }는 파이프의 이 단계에 있는 모든 라인 세트를 메모리에 저장하는 것으로 보입니다.또한 놀랍게도 속도가 느려서 실제로 모든 내용을 읽는 데 오랜 시간이 걸립니다. 그래서 제 질문은 두 가지입니다. 어떻게 하면 전체 데이터를 메모리에 버퍼링하지 않고 스트림을 한 줄씩 처리하게 할 수 있을까요?이를 위해 몇 기가바이트의 RAM이 소모되는 것을 피하고 싶습니다. 어떻게 하면 더 빨리 실행할 수..

programing 2023.04.08

디렉토리가 존재하지 않는 경우 작성

디렉토리가 존재하지 않는 경우 작성 여러 개의 디렉토리가 없는 경우 생성하기 위해 PowerShell 스크립트를 작성합니다. 파일 시스템이 이와 유사합니다. D:\ D:\TopDirec\SubDirec\Project1\Revision1\Reports\ D:\TopDirec\SubDirec\Project2\Revision1\ D:\TopDirec\SubDirec\Project3\Revision1\ 각 프로젝트 폴더에는 여러 리비전이 있습니다. 각 리비전 폴더에는 보고서 폴더가 필요합니다. 일부 "revisions" 폴더에는 이미 Reports 폴더가 포함되어 있지만 대부분은 포함되어 있지 않습니다. 각 디렉토리에 대해 이러한 폴더를 작성하기 위해 매일 실행되는 스크립트를 작성해야 합니다. 폴더를 작성하는 ..

programing 2023.04.08

PowerShell을 사용한 파일 이름 타임스탬프

PowerShell을 사용한 파일 이름 타임스탬프 난 끈에 길이 있어 C:\temp\mybackup.zip 예를 들어 이 스크립트에 타임스탬프를 삽입하고 싶습니다. C:\temp\mybackup 2009-12-23.zip PowerShell에서 이 작업을 쉽게 수행할 수 있는 방법이 있습니까?다음과 같이 $()와 같은 하위 식을 사용하여 이중 따옴표로 묶인 문자열에 임의 PowerShell 스크립트 코드를 삽입할 수 있습니다. "C:\temp\mybackup $(get-date -f yyyy-MM-dd).zip" 다른 곳에서 경로를 가져오는 경우(이미 문자열로): $dirName = [io.path]::GetDirectoryName($path) $filename = [io.path]::GetFileNam..

programing 2023.04.08

PowerShell의 Invoke-RestMethod는 curl -u(기본인증)에 상당합니다.

PowerShell의 Invoke-RestMethod는 curl -u(기본인증)에 상당합니다. 에 상당하는 것은 무엇입니까? curl -u username:password ... 에 탑재되어 .Invoke-RestMethod이거 해봤어요. $securePwd = ConvertTo-SecureString "password" -AsPlainText -Force $credential = New-Object System.Management.Automation.PSCredential ($username, $securePwd) Invoke-RestMethod -Credential $credential ... 401, Unauthorized가 반환됩니다.지금까지 이 방법밖에 효과가 없었습니다. $base64AuthI..

programing 2023.04.08

경로에서 파일 이름 추출

경로에서 파일 이름 추출 아래 경로에서 파일 이름을 추출합니다. D:\Server\사용자\CUST\MEA\Data\입력\파일\수정필 \CUST_MEAFile.csv 이 코드는 파일명을 얻기 위해 작성했습니다.폴더 레벨이 변경되지 않는 한 정상적으로 동작합니다.그러나 폴더 레벨이 변경된 경우 이 코드를 다시 작성해야 합니다.폴더 레벨에 관계없이 코드가 항상 파일명을 추출할 수 있는 등 유연하게 할 수 있는 방법을 찾고 있습니다. ($outputFile).split('\')[9].substring(0) 확장자를 포함해도 문제가 없다면 원하는 대로 해야 합니다. $outputPath = "D:\Server\User\CUST\MEA\Data\In\Files\CORRECTED\CUST_MEAFile.csv" $o..

programing 2023.04.08
반응형