2012-08-03 98 views
9

嗨我想創建一個批處理文件來獲取所有的子文件夾。任何人都可以幫我解決這個問題嗎?通過子文件夾循環

+2

下定決心......你想要一個批處理文件或PowerShell腳本? – Joey 2012-08-03 12:30:57

回答

9

這是在這兩個批處理文件或PowerShell中微不足道的:

批次:

for /r %%x in (*.sql) do (
    rem "(or whatever)" 
    sqlcmd "%%x" 
) 

的PowerShell:

Get-ChildItem -Recurse -Filter *.sql | 
    ForEach-Object { 
     sqlcmd $_.FullName # or whatever 
    } 
+0

嗨@Joey,是否有任何方法使用sqlcmd循環所有的子文件夾,而沒有硬編碼的子文件夾路徑?併爲PowerShell腳本最後一行,請你提供這個「sqlcmd $ _#或其他」的例子嗎?非常感謝 – 2012-08-06 01:37:19

1

這裏是一個PowerShell腳本我用得到的大小「學校「文件夾中的每個用戶的家庭文件夾的子文件夾。 IE瀏覽器。 N:\用戶名\ UserNameOSXProfile \學校

SizeOfSchoolFolder.ps1

$schoolFolderTotalSize=0 

$foundChildren = get-childitem *\*OSXProfile\School 
foreach($file in $foundChildren){ 
    $schoolFolderTotalSize = $schoolFolderTotalSize + [long](ls -r $file.FullName | measure -s Length).Sum 
} 

switch($schoolFolderTotalSize) { 
    {$_ -gt 1GB} { 
    '{0:0.0} GiB' -f ($_/1GB) 
    break 
    } 
    {$_ -gt 1MB} { 
    '{0:0.0} MiB' -f ($_/1MB) 
    break 
    } 
    {$_ -gt 1KB} { 
    '{0:0.0} KiB' -f ($_/1KB) 
    break 
    } 
    default { "$_ bytes" } 
} 

我從拉添加數字: Adding up numbers in PowerShell

而且製作文件夾的大小看起來很漂亮: Get Folder Size from Windows Command Line

而且\ * \ * OSXProfile \ School作爲搜索特定的子文件夾。 Limit Get-ChildItem recursion depth

0

要更換所有的文件名「XYZ」用「ABC」:

Get-ChildItem -Recurse -Filter *.mp3 | Rename-Item –NewName { $_.name –replace 'xyz','abc' } 
相關問題