Powershell .svn 디렉토리 삭제

https://serenityspaonline.com/tnzgfwc3cz Subversion 사용시 모든 Directory에 .svn 이라는 숨김 Directory가 생긴다.

https://gungrove.com/mibm2tnfyt File을 Checkout 한 디렉토리 밖으로 복사하여 다른 용도로 사용 하기 시작하면 의미 없는 것들이 되는데 이때 이것들을 한번에 지워주는 스크립트이다.

첫 Powershell 포스트 이기 때문에 Powershell의 여러 기능을 소개 하기 위해

동일한 동작을 하는 코드를 여러가지 버전으로 공개 하겠다.

우선 Parameter 를 다음과 같이 받는다.

param($Path)

https://sieterevueltas.net/dajyjt9

첫번째

#Path 하위 Item들 중 '.svn'을 포함하는 항목들을 가져옴 $Items = Get-ChildItem $Path -Include '.svn' -Recurse -Force foreach ($item in $Items) { #PSIsContainer 값으로 Directory 여부를 판단 #( $item.Attributes -eq 18 로 Hidden Directory를 감지 하는것도 좋다.) if ($item.PSIsContainer) { #하위 item 들 모두 삭제 Remove-Item $item -Recurse -Force } }



파이프 라인(PipeLine) 사용

Get-ChildItem $Path -Include '.svn' -Recurse -Force | Where-Object -FilterScript {$_.PSIsContainer} | ForEach-Object -Process {Remove-Item $_ -Recurse -Force};

https://space1026.com/2024/01/hfoig5xo

Alias 적용

https://www.justoffbase.co.uk/uncategorized/sxsnvow6be ls $Path -i '.svn' -r -fo | ?{$_.PSIsContainer} | %{rm $_ -r -fo}

https://equinlab.com/2024/01/18/gw1w22a

완성된 스크립트 Remove-SvnDirectories.ps1

param([Parameter(Mandatory=$true,Position=0)]$Path) ls $Path -i '.svn' -r -fo | ?{$_.PSIsContainer} | %{rm $_ -r -fo}

답글 남기기

https://modaypadel.com/o7dxbuqmhue 이메일 주소는 공개되지 않습니다.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.