命令行 - 使用正则表达式从文件夹中删除 windows
Command Line - Remove in folder with regex windows
Objective
如何使用文件名上的正则表达式(递归地)删除文件夹中的所有文件?
从 Windows 10 开始,我可以使用 PowerShell 或 git 带有 unix 命令的控制台。
所需积分
- 不匹配
/.+?-dbg.*?\.js/
- 要匹配文件,需要将 "brother file" 与前一个点模式相匹配。
示例测试文件夹包含
- ActionMode.js
- ActionMode-dbg.js
- Component.js
- 分量-dbg.js
- DualContribution.controller.js
- 双重贡献-dbg.controller.js
- resources.js
- 清单-json
将被删除的文件
- ActionMode.js
- Component.js
- DualContribution.controller.js
如果您需要更多信息,请问我。谢谢
我不知道这是否真的对您有帮助,但这是一个快速解决方案。
此 Autoit 代码将所有要删除的文件打印到控制台。
#include <Array.au3>
#include <File.au3>
#include <MsgBoxConstants.au3>
$allFiles = _FileListToArrayRec(@ScriptDir, '*.js', $FLTAR_FILES, $FLTAR_RECUR , $FLTAR_SORT, $FLTAR_FULLPATH )
If @error Then ConsoleWrite(@error & @crlf)
_ArrayDisplay($allFiles, "Sorted tree")
For $i = 0 to UBound($allFiles) -1
If StringInStr($allFiles[$i], '-dbg') <> 0 Then
If StringReplace($allFiles[$i], '-dbg', '') == $allFiles[$i-1] Then ConsoleWrite('Delete file: ' & $allFiles[$i-1] & @CRLF)
EndIf
Next
Objective
如何使用文件名上的正则表达式(递归地)删除文件夹中的所有文件?
从 Windows 10 开始,我可以使用 PowerShell 或 git 带有 unix 命令的控制台。
所需积分
- 不匹配
/.+?-dbg.*?\.js/
- 要匹配文件,需要将 "brother file" 与前一个点模式相匹配。
示例测试文件夹包含
- ActionMode.js
- ActionMode-dbg.js
- Component.js
- 分量-dbg.js
- DualContribution.controller.js
- 双重贡献-dbg.controller.js
- resources.js
- 清单-json
将被删除的文件
- ActionMode.js
- Component.js
- DualContribution.controller.js
如果您需要更多信息,请问我。谢谢
我不知道这是否真的对您有帮助,但这是一个快速解决方案。 此 Autoit 代码将所有要删除的文件打印到控制台。
#include <Array.au3>
#include <File.au3>
#include <MsgBoxConstants.au3>
$allFiles = _FileListToArrayRec(@ScriptDir, '*.js', $FLTAR_FILES, $FLTAR_RECUR , $FLTAR_SORT, $FLTAR_FULLPATH )
If @error Then ConsoleWrite(@error & @crlf)
_ArrayDisplay($allFiles, "Sorted tree")
For $i = 0 to UBound($allFiles) -1
If StringInStr($allFiles[$i], '-dbg') <> 0 Then
If StringReplace($allFiles[$i], '-dbg', '') == $allFiles[$i-1] Then ConsoleWrite('Delete file: ' & $allFiles[$i-1] & @CRLF)
EndIf
Next