0

这是我第一次上这个论坛,而且我对批处理编程也很陌生。我正在寻求帮助。我编写了一个(非常)简单的批处理文件,旨在删除 Windows 和 Mac 机器在尝试协作时创建的那些讨厌的 .DS_Store 和 thumbs.db 文件。

F:

DEL /S /A:H .DS_STORE

DEL /S /A:H ._.DS_STORE

DEL /S /A:H 大拇指.DB

>"!PATH!\DS_STORE&THUMBS_FTP.txt"

暂停

现在这个脚本可以很好地删除文件,但是在创建 .txt 文件时它根本不会创建任何东西。我知道路径是正确的,因为我可以在它前面加上“dir”,它会在包含目录列表的正确路径中创建一个 .txt 文件。

我正在尝试做的事情可能吗?

我想添加的另一件事是时间/日期或可以帮助识别创建的每个报告的内容。将其与文件名中的日期一起保存会更好...

我很感激任何帮助。

非常感谢。

4

2 回答 2

0

创建一个文本文件(这将删除一个最终存在的文件):

(
DEL /S /Q /A:H .DS_STORE
DEL /S /Q /A:H ._.DS_STORE
DEL /S /Q /A:H THUMBS.DB
)>"%PATH%\DS_STORE&THUMBS_FTP.txt"

您不应系统变量 ( %PATH%) 或批处理命令 ( path) 用于本地环境变量。
您应该避免文件名中出现丑陋的()特殊字符:&<>|%!=~

于 2013-08-19T13:37:58.070 回答
0

DEL /S /A:H .DS_STORE >> "!PATH!\DS_STORE&THUMBS_FTP.txt"

DEL /S /A:H ._.DS_STORE >> "!PATH!\DS_STORE&THUMBS_FTP.txt"

DEL /S /A:H THUMBS.DB >> "!PATH!\DS_STORE&THUMBS_FTP.txt"

> 暗示先行指令会将他的结果文本复制到正确的文件中 A >> 暗示追加(如果文件存在不覆盖结果)

在每个 del 指令中都需要一个 /q

于 2013-08-19T13:13:58.213 回答