반응형
PowerShell: "mkdir" 명령에 대한 파일이 이미 존재하는 경우 오류를 억제하려면 어떻게 해야 합니까?
고려 사항:
PS Y:\> mkdir C:/dog
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 11/7/2013 10:59 PM dog
PS Y:\> mkdir C:/dog
New-Item : Item with specified name C:\dog already exists.
At line:38 char:24
+ $scriptCmd = {& <<<< $wrappedCmd -Type Directory @PSBoundParameters }
+ CategoryInfo : ResourceExists: (C:\dog:String) [New-Item], IOException
+ FullyQualifiedErrorId : DirectoryExist,Microsoft.PowerShell.Commands.NewItemCommand
추가.-Force
명령에 대한 parameter.
용도:
mkdir C:\dog -ErrorAction SilentlyContinue
올바른 이유가 없는 한 오류 메시지를 억제하지 않는 것이 좋습니다.디렉토리를 만들기만 시도하는 것이 아니라 디렉토리가 존재하는지 확인합니다.그렇다면 내용물을 삭제하거나 다른 이름을 골라야 하는 것은 아닐까요?그래서.
if (-not (test-path "c:\foobar") ) {
write-host "c:\foobar doesn't exist, creating it"
md 'c:\foobar'|out-null
} else {
write-host "c:\foobar exists, no need to create it"
}
오류를 억제하는 것은 일반적으로 당신이 말하는 것처럼 최선의 방법이 아니지만, 명령어는-Force
이전에 존재하는지 확인하는 것보다 훨씬 빨리 실행됩니다.
여기서 D:\는 RAM 디스크입니다.
Measure-Command {new-item "D:\NewFolder\NewSubFolder" -ItemType Directory -force}
첫 번째 실행(폴더 개체 생성): 5ms
두 번째 실행(폴더가 존재한 후): 1ms
Measure-Command {if (-not (test-path "D:\NewFolder\NewSubFolder") ) {
write-host "Directory doesnt exist, creating it"
md "D:\NewFolder\NewSubFolde"|out-null} else {
write-host "Directory exists, no need to create it"}}
첫 번째 실행(폴더 개체 생성): 54ms
두 번째 실행(폴더가 존재한 후): 15ms
내 게시물을 치워줘서 고마워요 피터!당신이 바로 그 사람입니다!
파워셸 7(||
작동하지 않음):
(test-path foo) ? $null : (mkdir foo)
그냥 사용하시면 됩니다.if
:
if (-not (test-path C:/dog)) { mkdir -p C:/dog }
-p
경로에 존재하지 않는 모든 디렉터리를 만듭니다.
이것의 단점은 길의 이름을 두번 지어야 한다는 것입니다.
언급URL : https://stackoverflow.com/questions/19853340/powershell-how-can-i-suppress-the-error-if-file-alreadys-exists-for-mkdir-com
반응형
'programing' 카테고리의 다른 글
Spring Data JPA: 규격 쿼리 가져오기 조인 만들기 (0) | 2023.09.20 |
---|---|
Internet Explorer용 자리 표시자 입력 (0) | 2023.09.20 |
HRESULT의 예외: 시스템의 경우 0x8002000B(DISP_E_BADINEX).런타임.인터롭 서비스.COME 예외 (0) | 2023.09.15 |
Shift-JIS 및 CP932로 SQL 주입 공격을 만드는 방법은 무엇입니까? (0) | 2023.09.15 |
세로 스크롤 기반 jquery로 클래스 추가/제거? (0) | 2023.09.15 |