Powershell 为每个文件创建文件夹并将文件移动到文件夹中

Powershell 为每个文件创建文件夹并将文件移动到文件夹中,powershell,Powershell,我需要一个可以从powershell运行的命令,为目录中的每个文件(基于文件名)创建一个文件夹,然后将文件移动到新创建的文件夹中 例如: 开始文件夹: Dog.jpg Cat.jpg \Dog\Dog.jpg \Cat\Cat.jpg 下面的命令非常适用于为当前工作目录中的每个文件名创建文件夹 结果文件夹: Dog.jpg Cat.jpg \Dog\Dog.jpg \Cat\Cat.jpg \狗\ \猫\ 我想要实现的是: Dog.jpg Cat.jpg \Dog\Dog.jpg \C

我需要一个可以从powershell运行的命令,为目录中的每个文件(基于文件名)创建一个文件夹,然后将文件移动到新创建的文件夹中

例如:

开始文件夹:

Dog.jpg
Cat.jpg
\Dog\Dog.jpg
\Cat\Cat.jpg
下面的命令非常适用于为当前工作目录中的每个文件名创建文件夹

结果文件夹:

Dog.jpg
Cat.jpg
\Dog\Dog.jpg
\Cat\Cat.jpg
\狗\ \猫\

我想要实现的是:

Dog.jpg
Cat.jpg
\Dog\Dog.jpg
\Cat\Cat.jpg

有人能帮我吗?

我想试试这样的东西:

Function Create-FolderAndMoveFile
{
    param(
        [string]$folder
    )

    $files = Get-ChildItem -Path $folder -Filter *.jpg

    foreach($file in $files)
    {
        $dir = [io.path]::GetFileNameWithoutExtension("$file")
        $dest = $("$folder\$dir")
        New-Item $dest -ItemType Directory

        Move-Item -Path $file.Fullname -Destination $dest
    }
}
然后您可以调用此函数,如
Create folder和movefile-folder C:\yourSuperWesomePath\
,它将为存在的每个.jpg文件创建一个文件夹


希望这对您有所帮助

请用您当前尝试的内容以及您遇到的具体问题/错误更新您的问题如果您有多张猫的照片怎么办?(Cat.jpg、Cat1234.jpg等)?使用什么格式命名这些文件?