Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php I';我是Windows PowerShell的新手。如何将%2F转换为/?_Php_Windows_Powershell - Fatal编程技术网

Php I';我是Windows PowerShell的新手。如何将%2F转换为/?

Php I';我是Windows PowerShell的新手。如何将%2F转换为/?,php,windows,powershell,Php,Windows,Powershell,我选择了所有相关文件,然后从Windows PowerShell中打开文件时自动列出的目录中键入以下命令: fully_qualified_dir_here> dir | rename-item -NewName {$_.name -replace '%2F', '/'} 在按下enter键后,出现以下错误: rename-item : Source and destination path must be different. At line:1 char:7 + dir | rena

我选择了所有相关文件,然后从Windows PowerShell中打开文件时自动列出的目录中键入以下命令:

fully_qualified_dir_here> dir | rename-item -NewName {$_.name -replace '%2F', '/'}
在按下enter键后,出现以下错误:

rename-item : Source and destination path must be different.
At line:1 char:7
+ dir | rename-item -NewName {$_.name -replace '%2F', '/'}
+       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (C:\xampp\htdocs...icted\mapnik\16:String) [Rename-Item],
    + FullyQualifiedErrorId : RenameItemIOError,Microsoft.PowerShell.Commands.RenameItemCommand
我认为这与
%2F
有关,但我不确定。我用PHP得到了一堆地图块,我把它们命名错了,以为以后可以更改它们,但Apache服务器在转换
%2F
时遇到了问题。现在,我无法重命名它们并使它们进入正确的文件夹。我已经制作了文件夹

感谢您的帮助。谢谢

  • 检查文件名是否实际包含仅处理相关项的文本
  • 使用
    Move Item
    ,因为
    /
    表示子目录,所以需要移动文件
  • 确保名称的子目录部分存在,或强制创建它
  • 检查文件名是否实际包含仅处理相关项的文本
  • 使用
    Move Item
    ,因为
    /
    表示子目录,所以需要移动文件
  • 确保名称的子目录部分存在,或强制创建它

  • 我的文件看起来像0%2F12%2F925.png,我希望它看起来像0/12/925.png。那肯定行吗?有很多文件?是的,我已经做了目录。像0%2F12%2F925.png这样的文件位于同一父目录中,因此这些文件夹存在。这是我第一次使用PowerShell。我通常使用JavaScript和PHP。是的,我已经创建了这些目录,我还想确保它们不会被覆盖。换句话说,我在mapnik文件夹(父文件夹)中有目录0,然后在该目录12中,但所有文件都在mapnik中。如果php的
    rename()
    使用
    %2F
    它会自动将文件移动到相应的文件夹中。
    mkdir
    在目录存在时不会执行任何操作。FWIW目录无论如何不能被“覆盖”。我的文件看起来像0%2F12%2F925.png,我希望它看起来像0/12/925.png。那肯定行吗?有很多文件?是的,我已经做了目录。像0%2F12%2F925.png这样的文件位于同一父目录中,因此这些文件夹存在。这是我第一次使用PowerShell。我通常使用JavaScript和PHP。是的,我已经创建了这些目录,我还想确保它们不会被覆盖。换句话说,我在mapnik文件夹(父文件夹)中有目录0,然后在该目录12中,但所有文件都在mapnik中。如果php的
    rename()
    使用
    %2F
    它会自动将文件移动到相应的文件夹中。
    mkdir
    在目录存在时不会执行任何操作。无论如何都不能“覆盖”FWIW目录。
    dir *%2F* | %{
        $newName = $_.name -replace '%2F', '/'
        mkdir (split-path $newName) -force
        move $_ $newName
    }