12

嗨,我想创建一个批处理文件来获取所有子文件夹。有人可以帮我吗?

4

3 回答 3

14

这在批处理文件或 PowerShell 中都很简单:

批:

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

电源外壳:

Get-ChildItem -Recurse -Filter *.sql |
    ForEach-Object {
        sqlcmd $_.FullName # or whatever
    }
于 2012-08-03T12:33:12.140 回答
1

这是我用来获取每个用户主文件夹的子文件夹中“学校”文件夹大小的 powershell 脚本。IE。N:\用户名\用户名OSXProfile\学校

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 作为特定子文件夹的搜索。 限制 Get-ChildItem 递归深度

于 2013-11-27T17:16:21.823 回答
-1

要将所有文件名中的 'xyz' 替换为 'abc':

Get-ChildItem -Recurse -Filter *.mp3 | Rename-Item –NewName { $_.name –replace 'xyz','abc' } 
于 2016-09-23T20:28:42.827 回答