2012-08-06 88 views
1

我想使用power shell循環所有子文件夾並運行其中的所有文件。但是,如果我的根包含3個子文件夾,我想循環並相應地將其列出到以下順序:子文件夾C,子文件夾B和子文件夾A,以便文件執行將按照序列運行(C - > B- > A)。Powershell按序列循環子文件夾

下面是我的編碼,請在此告訴我。非常感謝。

Get-ChildItem -path "C:\Root\subfolders\" -recurse -Filter *.sql | 
foreach-object -process { $.FullName }| ForEach-Object { sqlcmd -i $ } 

回答

0

你可以排序.sql文件列表由他們的父文件夾的名稱使用Sort-Object cmdlet的執行它們之前運行:

Get-ChildItem "C:\Root" -Recurse -Filter *.sql | ` 
Sort-Object -Property DirectoryName -Descending | ` 
Foreach-Object -Process { sqlcmd -i $.FullName } 
+0

嗨@Enrico坎皮多利奧,如果序列在C - > A ---> B中,-desc不再起作用..有沒有其他方法可以解決這個問題?非常感謝 – 2012-08-07 06:13:11