windows中畸形文件夹和畸形文件的创建、访问、删除


【方案一】以点结尾的文件夹

复制内容到剪贴板
代码:
rem 创建以点结尾的文件夹
md "C:test"
md "C:testbatcher.."
复制内容到剪贴板
代码:
rem 把以点结尾的文件夹重命名为普通文件夹
rem 短文件名可以使用dir/x命令获得
ren "C:testBATCHE~1" "batcher"
复制内容到剪贴板
代码:
rem 把普通文件夹重命名为以点结尾的文件夹
ren "C:testbatcher" "batcher../"
复制内容到剪贴板
代码:
rem 打开以点结尾的文件夹
start "" "C:testbatcher.."
复制内容到剪贴板
代码:
rem 进入以点结尾的文件夹
rem 短文件名可以使用dir/x命令获得
cd "C:testNEW~1"
复制内容到剪贴板
代码:
rem 向以点结尾的文件夹中复制文件
copy "C:testa.txt" "C:testbatcher.."
复制内容到剪贴板
代码:
rem 删除以点结尾的文件夹中的文件
rem 短文件名可以使用dir/x命令获得
del /a /f /q "C:testNEW~1a.txt"
复制内容到剪贴板
代码:
rem 修改以点结尾的文件夹的属性为“隐藏”
@echo off
set DstFolder=C:testbatcher.
>"%temp%FolderProperty.vbs" echo Set objFSO = CreateObject("Scripting.FileSystemObject").GetFolder("?%DstFolder%.")
>>"%temp%FolderProperty.vbs" echo objFSO.Attributes=objFSO.Attributes+2
cscript /nologo "%temp%FolderProperty.vbs"
复制内容到剪贴板
代码:
rem 删除以点结尾的文件夹
rd /s /q "C:testbatcher.."

【方案二】以空格结尾的文件夹

复制内容到剪贴板
代码:
基本操作与方案一大致相同,此处不再赘述。

【方案三】系统保留字文件夹(Con, Prn, Aux, Nul, Lpt1, Com1, Com2)

复制内容到剪贴板
代码:
rem 创建系统保留字文件夹
md "C:testbatcher"
md "C:testbatchercon"
复制内容到剪贴板
代码:
rem 打开系统保留字文件夹
start "" "C:testbatchercon"
复制内容到剪贴板
代码:
rem 向系统保留字文件夹中复制文件
copy "C:testbatchera.txt" "C:testbatchercon"
复制内容到剪贴板
代码:
rem 删除系统保留字文件夹中的文件
del /a /f /q "C:testbatchercona.txt"
复制内容到剪贴板
代码:
rem 修改系统保留字文件夹的属性为“隐藏”
@echo off
set DstFolder=C:testbatchercon
>"%temp%FolderProperty.vbs" echo Set objFSO = CreateObject("Scripting.FileSystemObject").GetFolder("?%DstFolder%.")
>>"%temp%FolderProperty.vbs" echo objFSO.Attributes=objFSO.Attributes+2
cscript /nologo "%temp%FolderProperty.vbs"
复制内容到剪贴板
代码:
rem 删除系统保留字文件夹
rd /s /q "C:testbatchercon"

【方案四】特殊字符文件夹(, /, :, *, ?, ", <, >, |)

复制内容到剪贴板
代码:
rem 创建特殊字符文件夹
@echo off
set "DstFolder=C:testbatcherA"
if exist "%DstFolder%" (
echo 文件夹%DstFolder%已存在
goto :eof
)
md "%DstFolder%"
>"%DstFolder%desktop.ini" echo [.ShellClassInfo]
>>"%DstFolder%desktop.ini" echo LocalizedResourceName=BatHome,-1
attrib +s +h "%DstFolder%desktop.ini"
>%temp%UnlockReg.txt echo HKEY_CURRENT_USERSoftwareMicrosoftWindowsShellLocalizedResourceName [9]
regini %temp%UnlockReg.txt
>%temp%LockReg.txt echo HKEY_CURRENT_USERSoftwareMicrosoftWindowsShellLocalizedResourceName [8]
>>%temp%LockReg.txt echo "BatHome,-1" = REG_SZ "|"
regini %temp%LockReg.txt
attrib +s "%DstFolder%"
复制内容到剪贴板
代码:
rem 创建无法直接删除的特殊字符文件夹
@echo off
set "DstFolder=C:testbatcherB"
if exist "%DstFolder%" (
rem echo y|cacls "?%DstFolder%nul" /g everyone:f
rem attrib -r -a -s -h "?%DstFolder%nul"
rem del /a /f /q "?%DstFolder%nul"
echo 文件夹%DstFolder%已存在
goto :eof
)
md "%DstFolder%"
>"%DstFolder%desktop.ini" echo [.ShellClassInfo]
>>"%DstFolder%desktop.ini" echo LocalizedResourceName=BatHome,-1
attrib +s +h "%DstFolder%desktop.ini"
>"?%DstFolder%nul" echo.
attrib +s +h "%DstFolder%desktop.ini"
>%temp%UnlockReg.txt echo HKEY_CURRENT_USERSoftwareMicrosoftWindowsShellLocalizedResourceName [9]
regini %temp%UnlockReg.txt
>%temp%LockReg.txt echo HKEY_CURRENT_USERSoftwareMicrosoftWindowsShellLocalizedResourceName [8]
>>%temp%LockReg.txt echo "BatHome,-1" = REG_SZ "|"
regini %temp%LockReg.txt
attrib +r +a +s +h "?%DstFolder%nul"
echo y|cacls "?%DstFolder%nul" /d everyone>nul
attrib +s +r "%DstFolder%"

【方案五】以点结尾的文件

复制内容到剪贴板
代码:
rem 创建以点结尾的文件
md "C:test"
echo bbs.bathome.cn>"?C:testbatcher."
复制内容到剪贴板
代码:
rem 打开以点结尾的文件
notepad "?C:testbatcher."
复制内容到剪贴板
代码:
rem 复制以点结尾的文件
copy "?C:testbatcher." "?C:"
复制内容到剪贴板
代码:
rem 修改以点结尾的文件的属性为“隐藏”
@echo off
set DstFile=C:testbatcher.
>"%temp%FileProperty.vbs" echo Set objFSO = CreateObject("Scripting.FileSystemObject").GetFile("?%DstFile%.")
>>"%temp%FileProperty.vbs" echo objFSO.Attributes=objFSO.Attributes+2
cscript /nologo "%temp%FileProperty.vbs"
复制内容到剪贴板
代码:
rem 删除以点结尾的文件
del /a /f /q "?C:testbatcher."

【方案六】系统保留字文件(Con, Prn, Aux, Nul, Lpt1, Com1, Com2)

复制内容到剪贴板
代码:
rem 创建系统保留字文件
md "C:testbatcher"
echo bbs.bathome.cn>"?C:testbatchercon"
复制内容到剪贴板
代码:
rem 打开系统保留字文件
notepad "?C:testbatchercon"
复制内容到剪贴板
代码:
rem 复制系统保留字文件
copy "?C:testbatchercon" "?C:test"
复制内容到剪贴板
代码:
rem 修改系统保留字文件的属性为“隐藏”
@echo off
set DstFile=C:testbatchercon
>"%temp%FileProperty.vbs" echo Set objFSO = CreateObject("Scripting.FileSystemObject").GetFile("?%DstFile%.")
>>"%temp%FileProperty.vbs" echo objFSO.Attributes=objFSO.Attributes+2
cscript /nologo "%temp%FileProperty.vbs"
复制内容到剪贴板
代码:
rem 删除系统保留字文件
del /a /f /q "?C:testbatchercon"

 


豫ICP备12024565号-1   E-mail:admin@hlc8.com