2014-12-15 3 views
0

FTP라는 디렉터리에 폴더 구조가 있습니다. 여러 개의 파일을 :폴더 구조 이름 일치 Powershell

\\FTP\December 15 
\\FTP\January 15 
\\FTP\February 15 
\\FTP\March 15 

등 ...

나는 PowerShell 스크립트를 사용하여이 폴더에 파일을 이동합니다. 잠재적으로 여러 폴더.

나는이 달 예를 들어

에 폴더에 맞게 지금은 GCI 문을 쓰기 어떻게 12월

를 반환합니다

$month = get-date -format m 

월을 추출 할 : 이런 식으로 뭔가를 ?

gci '\\FTP\' -recurse WHERE $_.Fullname -like $a.substring(0,9) 

도와주세요

+0

이 모든 공유는 FTP라고하는 서버에 있습니까? 'Get-ChildItem'의 일부로'\\ server \ share'를 먼저 사용하지 않고 PowerShell에서 호출 할 수 있다고 생각하지 마십시오 – Matt

+0

@Matt이 질문에 대해 간단하게 설명했지만 UNC 경로를 사용합니다. 감사합니다 – Hituptony

답변

0

$month = get-date -format m 반환 December 15 그게 맞습니다 가정합니다.

그런 다음 코드는 다음과 같이 표시됩니다

Get-ChildItem \\FTP\ -recurse | where { $_.Fullname -like "*$month*"} 

우리가 표현식과 일치하는 각 항목을 반환합니다 Where-Object을 사용합니다.

+0

'Get-ChildItem "\\ FTP \ $ month *"'도 작동합니다. – kevmar

1

여기에 특정 달의 폴더를 가져 오는 기능이 있습니다. 그러면 "할 일을 말한 폴더로 바꾸기"라는 설명을 폴더에 넣기 위해 바꿀 수 있습니다. (복사 대상, Get-ChildItem, 등)

function Get-MonthlyFolder 
{ 
$month = get-date -format m; 
#Bellow Line Gets The Full Path To Current Monthly Folder Stored In $folderInst variable: 
$folderInst = gci "\\FTP" | Where {$.Name -like "$month*"} | Select FullName; 
#Do Work To Said Folder 
} 
Get-MonthlyFolder;