0

我需要从指定文件夹中的文件和文件夹中删除一个属性,该属性作为批处理文件的参数给出。

我试着这样做

for /f %%i in ('dir "%1" /A:H /B  ') do attrib -H %%i

但它不适用于%1

我做错了什么以及如何在这里正确使用“for”?

4

1 回答 1

1

两点:

您应该使用%1or "%~1": 参数已经解析,因此添加额外的引号可能会破坏含义。

dir some_path /b ...将返回不完整的限定路径名,因此%%i没有驱动器:路径信息。

快速解决方案:

pushd %1
for /f %%i in ('dir /A:H /B') do attrib -H %%i
popd
于 2013-10-14T13:28:36.320 回答