code

PowerShell 코드 정리 또는 재포맷?

starcafe 2023. 8. 16. 22:30
반응형

PowerShell 코드 정리 또는 재포맷?

중복 가능성:
PowerShell 코드 포맷기/예쁜 프린터가 있습니까?

Powershell 코드를 다시 포맷/정리하는 데 사용할 수 있는 도구를 아는 사람?

예:-

if ($c -eq "Cat") 
{
$a="Bubble" 
}
else
{
$a="Trouble"
}
Write-Host $a

받는 사람:-

if ($c -eq "Cat") 
{
    $a="Bubble" 
}
else
{
    $a="Trouble"
}
Write-Host $a

ie, If Statements 등을 탭핑하면 VB로 수행할 수 있는 도구라는 것을 알지만 Powershell에 대한 도구는 아직 보지 못했습니다.

빠른 업데이트 - 이제 GitHub에 있습니다: https://github.com/DTW-DanWard/PowerShell-Beautifier 저는 PowerShell에 예쁜 프린터/코드 클리너를 썼습니다.공백을 정리하고, 코드 그룹을 들여쓰기하고, 별칭을 명령으로 대체하고, 명령, 매개 변수, 유형 등에 대한 케이싱을 수정합니다.이 파일을 사용하여 파일을 제자리에 다시 포맷하거나 원본 파일을 읽고 결과를 다른 파일로 출력할 수 있습니다.

메모장++사용한 빠른 테스트는 다음을 나타냅니다.TextFX-> TextFX Edit -> Reindent C++매크로는 예제에서 원하는 대로 작동합니다.더 복잡한 샘플을 얼마나 잘 처리하는지 모르겠습니다.

또한 NP++에는 PowerShell용 언어 형식 매크로가 있습니다.의외로 PowerGui Script Editor가 제대로 작동하지 않는 것 같습니다.

gvim(및 파워셸 플러그인)을 사용하는 경우, 명령 모드에 있을 때 다음을 입력하여 원하는 때마다 코드의 모든 줄을 쉽게 들여쓸 수 있습니다.gg=G

코드로 작동하는 빠른 낙서:

$tab = '  '
$indent = 0

switch -regex -file ./x.ps1 {
  '{\s*$'   { $tab * $indent++ + $_ }
  '^\s*}'   { $tab * --$indent + $_ }
  '^\s*$'   { "" }
  '[^{}]'   { $tab * $indent + $_ }
}

신뢰성에 대한 보장이 없습니다.한 줄 블록을 많이 사용하거나 별도의 줄이 아닌 블록을 닫는 코드를 사용하면 이상한 작업을 수행할 수 있습니다.하지만 그것을 제외하고는 효과가 있을지도 모릅니다.

Windows 버전을 찾는 것은 어려울 수 있지만 http://www.gnu.org/software/indent/ 을 확인하십시오.파워셸 코드를 꽤 잘 다룰 수 있을 겁니다.

언급URL : https://stackoverflow.com/questions/5807943/powershell-code-tidy-or-reformat

반응형