首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从FileName编码的%2f或%2F中的URL路径分隔符(正斜杠)创建目录

如何从FileName编码的%2f或%2F中的URL路径分隔符(正斜杠)创建目录
EN

Stack Overflow用户
提问于 2022-07-25 12:16:50
回答 2查看 67关注 0票数 1

正如我在Q-title中提到的,当我通过正确的访问令牌时,我已经设置了一个崇高的设置自动同步过程到我选择的Github。

现在,考虑到相对路径,该过程将文件夹中存在的任何文件同步为DirName%2FFileName.extension,其中DirName和/或FileName可能包含单词之间的单数空格(%20)(如果两者中的单词超过2字)。

现在,当我通过‘DownloadZIP按钮下载gist时,它当然会以单个zip的形式下载多个文件的整个gist,下载后可以将其解压缩到本地系统(Windows10/11 OS)的文件夹中。

所以,最后的问题是:当我下载了这样的zip并解压缩到包含一个/多个文件的文件夹中,其中包含有%2f%2F的文件名,我如何从这些文件名创建一个目录,并在可能的情况下通过一个批处理文件或一个PowerShell命令将这些文件移动到那些目录中,但是可以从批处理脚本中运行,然后重新命名这些文件以从它们的名称中删除所有的DirName%2f部件?我知道mvmd命令,但是如何从URL编码的字符组创建目录并执行这些操作?

注意:如果与本地同步的文件相对在mainfolder/subfolders...中,则 DirName%2f部件可能发生在像DirName1%2fDirName2%2f...这样的倍数中。

EN

回答 2

Stack Overflow用户

发布于 2022-07-25 12:34:40

你可以试试:

代码语言:javascript
运行
复制
[System.Web.HttpUtility]::UrlDecode("DirName%2FFileName.extension")

它规定:

代码语言:javascript
运行
复制
DirName/FileName.extension

然后,您可以使用CmdLets和名词"Path“来管理您的文件名。

代码语言:javascript
运行
复制
Get-Command -Noun path

如果它存在一些/而不是\,Powershel应该对它们进行管理。

要处理文件和文件夹,给出了带有名词项的CmdLet:

代码语言:javascript
运行
复制
Get-Command -Noun item

例如,要创建一个目录:

代码语言:javascript
运行
复制
New-Item -name toto -ItemType Directory
票数 1
EN

Stack Overflow用户

发布于 2022-07-25 12:44:30

代码语言:javascript
运行
复制
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION

SET "#name1=DirName%%2f"
SET "#name2=DirName1%%2fDirName2%%2f"
SET "#name3=DirName1%%2FDirName2%%2F"
SET "#2f=%%2f"
SET "#subs=ABC"

SET #

FOR /f "delims=" %%e IN ("%#2f%") DO (
 FOR /f "delims=" %%w IN ("!#name1:%#2f%=%#subs%!") DO ECHO REN "%#name1%" "%%w"
 FOR /f "delims=" %%w IN ("!#name2:%#2f%=%#subs%!") DO ECHO REN "%#name2%" "%%w"
 FOR /f "delims=" %%w IN ("!#name3:%#2f%=%#subs%!") DO ECHO REN "%#name3%" "%%w"
)

ECHO ===================

FOR %%b IN ("%#name1%" "%#name2%" "%#name3%") DO (
 SET "#name=%%~b"
 FOR /f "delims=" %%e IN ("%#2f%") DO (
  FOR /f "delims=" %%w IN ("!#name:%#2f%=%#subs%!") DO ECHO REN %%b "%%w"
 )
)

GOTO :EOF

这个演示展示了如何在批处理中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73109089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档