我想使用power shell循环所有子文件夹并运行其中的所有文件。但是,如果我的根包含3个子文件夹,我想循环并将其列出到以下序列:子文件夹C,子文件夹B和子文件夹A,以便文件执行将根据序列运行(C - > B- - > A)。
以下是我的编码,请告诉我这个。非常感谢你。
Get-ChildItem -path "C:\Root\subfolders\" -recurse -Filter *.sql |
foreach-object -process { $.FullName }| ForEach-Object { sqlcmd -i $ }
答案 0 :(得分:0)
您可以排序 .sql
文件列表,以便在使用Sort-Object cmdlet执行它们之前,通过其父文件夹的名称运行:
Get-ChildItem "C:\Root" -Recurse -Filter *.sql | `
Sort-Object -Property DirectoryName -Descending | `
Foreach-Object -Process { sqlcmd -i $.FullName }