当我运行这个脚本
@echo off for /F "usebackq delims=" %%I in ("%userprofile%desktopmyfile.txt") do type NUL > "%userprofile%desktopuser%%I.mp3" pause exit
我得到这个错误
从powershell传递batch file中的参数
recursion重命名子文件夹Windowsbatch file中的文件
批处理variables在执行时不扩展
在PowerShell中使用%〜dp0等效(使用Expand-Archive cmdlet)
斯蒂芬和韦斯在他们的评论中暗示了你的问题的最可能的来源。
您的myFile.txt最有可能包含一些文件或文件夹的完整路径,包括驱动器号。 %USERPROFILE%还包含一个带有盘符的完整路径。 假设用户是“someUser”,并且文件中的路径是“c: somePath someFile.ext”,那么你最终得到:
echo nul >"C:UseRSSomeUserdesktopuserc:somePathsomeFile.ext.mp3"
这样一个错误的路径将会产生你发布的错误信息。 一个有效的路径最多可以在驱动器号后包含一个冒号,但上面有两个冒号。
你可以通过%%~nI保存文件的名字来解决这个问题,这会产生:
echo nul >"C:UseRSSomeUserdesktopusersomeFile.mp3"
我仍然关心桌面中的“用户”文件夹。 这看起来很可疑。 如果该文件夹不存在,则会收到不同的错误消息: The system cannot find the path specified.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。