我需要从指定文件夹中的文件和文件夹中删除属性,该文件和文件夹作为批处理文件的参数提供。
我试图这样做
for /f %%i in ('dir "%1" /A:H /B ') do attrib -H %%i
但它不适用于%1
我做错了什么以及如何在这里正确使用“for”?
答案 0 :(得分:1)
两点:
您应该使用%1
或"%~1"
:已经解析了参数,因此添加额外的引号可能会破坏意义。
dir some_path /b ...
将返回非全限定路径名,因此%%i
将无法驱动:路径信息。
快速解决方案:
pushd %1
for /f %%i in ('dir /A:H /B') do attrib -H %%i
popd