我有一个将日志转储到文件夹的应用程序。它将文件写入没有扩展名的最新文件,并且每个旧版本都会在末尾附加.1,.2,.3等。
示例:
Filename
Filename.1
Filename.2
Filename.3
我想编写一个删除“filename.?
”的基本脚本,但每当我写一些像
del /s "Filename.?"
或
del /s "filename.*"
它用该文件名删除所有内容。
非常感谢任何帮助。
答案 0 :(得分:2)
如果你不介意暂时重命名文件,你可以这样做:
ren filename filename_keep
del filename.*
ren filename_keep filename
答案 1 :(得分:2)
写了一个小蟒蛇脚本以获得乐趣。
import os
for f in os.listdir('.'):
if os.path.isfile(f):
if '.' in f:
os.remove(f)
只需弹出一个python shell并运行它,就像一个魅力。
答案 2 :(得分:2)
假设Windows,将其放在名为“exclude_delete.bat”的文件中:
@echo off & setlocal
if "%1"=="" goto :syntax
set wildcard=%1
for %%f in (%wildcard%) do (
if not "%%~xf"=="" (
echo Deleting: %%f
del "%%f"
) else (
echo Keeping: %%f
)
)
goto :eof
:syntax
echo. Syntax: %0 ^<wildcard^>
echo.
echo. Example: to delete every file "Filename.*" except "Filename":
echo. %0 Filename.*