2016-03-07 112 views
0

我有一個文件夾有多個子文件夾,每個文件夾都有大約50個包含文本文件的子文件夾我想將文件從一個文件夾移動到另一個文件夾而無需打開每個子文件夾。 有兩種類型的文件1. BSEG和2 BKPFPowershell將文本文件從一個文件夾移動到另一個文件夾

我想移動正在開始BSEG的文件夾,名爲BSEG和文件BKPF開始叫BKPF

我的代碼文件夾中的文件使用BSEG文件是

Move-Item D:\Company\SAP\JAN\"BSEG"*.txt D:\Company\BSEG 

此代碼的工作,但我必須寫更新代碼的每個子文件夾,我想幫助,所以它看起來對所有子文件夾

回答

0

PowerShell使用-recurse完成這一修改此代碼。給這個鏡頭。 -recurse部分告訴它擊中每個子文件夾,然後將輸出傳送到移動項目。值得注意的是,這不會抓取文件夾結構,只是文件,如果您嘗試移動具有相同名稱的文件,它也會失敗。

Get-ChildItem D:\Company\SAP\JAN\"BSEG"*.txt -recurse | Move-Item -Destination D:\Company\BSEG 
+0

謝謝你的幫助:) – mb1987

0

dfundako是它的一半。 Move-Item不會進入子文件夾。使用Get-ChildItem-Recurse開關將幫助您獲得要移動的文件。您還有兩組不同的文件可以移動。切勿重複您需要重複使用的代碼。因此讓我們有一個簡單的foreach循環與你的兩個文件集。由於您將具有相同前綴的文件移動到其自己的文件夾中,因此這種方式很有效

foreach($fileType in $fileTypes){ 
    Get-ChildItem -Path D:\Company\SAP\JAN\ -Filter "$fileType*.txt" -Recurse | 
     Move-Item -Destination D:\Company\$fileType 
} 
+0

謝謝你的幫助:) – mb1987

相關問題