【发布时间】:2020-07-30 14:04:53
【问题描述】:
我的一个用户在将云同步到本地工作站时遇到问题。他在深度 (10+) 文件夹结构模式中有 很多 个文件夹,并且 每个 文件夹包含至少三个点(“xy. asdf.qwer $通用描述符").
所以现在有很大的 foobar。在线一切正常,可以按预期创建和编辑新文件。但是同步的文件在 Windows 10 企业版上不断崩溃,并且资源管理器警告“错误的文件夹名称”和其他东西。所以我允许用户通过 GPO 使用长文件夹名称(最多 260 个字符....严重吗?),我认为“做得好。问题解决了”......但没有......同步的本地文件仍然有问题......所以我通过注册表允许相同的选项。彼此彼此。 explorer 一直在抱怨。
所以我决定更改文件夹名称并删除点并用空格替换它们。所以文件夹“xy.asdf.qwer $generic descriptor”将是“xy asdf qwer $generic descriptor”。用户说没关系,所以我写了一个批处理来重命名文件夹。对不起,我的PowerShell真的很糟糕。但是,如果您知道 powershell 中的解决方案,那么它也很受欢迎。
@echo off
setlocal enabledelayedexpansion
set "leer= "
set "punkt=."
call :rekursion
goto :eof
:rekursion
for /D %%d in (*) do (
set name=%%~nxd
ren "%%d" "!name:%punkt%=%leer%!"
cd %%d
call :rekursion
cd ..
)
exit /b
批处理工作正常,但不断抛出错误并告诉我“不允许”......它有什么问题?为什么它工作但抱怨?我错过了什么?所有权利都设置正确(完全访问...) [抱歉英语不好...]
【问题讨论】:
-
这个问题有两 (2) 个答案。其中一个对你有用吗?
标签: batch-file replace cmd naming directory-structure