我正在使用win_file ansible模块删除一个目录。但是,当它运行剧本时,我看到以下错误:
"msg":“未能删除C:\product\eclipse-cpp-2019-06-R-win32-x86_64\eclipse\plugins\com.amazonaws.eclipse.elasticbeanstalk_1.0.0.v201807201743\com\amazonaws\eclipse\elasticbeanstalk\server\ui\configEditor:指定的路径、文件名或两者都太长。完全限定的文件名必须小于260个字符,目录名必须小于248个字符。”
Ansible剧本(uninstall.yml)正在通过UCD (UrbanCode Deploy)运行。这是我的密码:
- name: Remove install_home folder
win_file:
path: "{{install_home}}"
state: absent任何人对上述错误是否是由操作系统、Ansible、UCD或限制引起的,都有任何想法。我希望有任何想法或指导,我可以如何通过上述。
非常感谢
发布于 2021-07-23 04:56:01
这是来自OS的限制,按照这的说法
在Windows10Version1607之前的Windows版本中,路径的最大长度是
MAX_PATH,它被定义为260个字符。在以后的Windows版本中,需要更改注册表项或使用组策略工具才能取消限制。有关详细信息,请参阅最大路径长度限制。
防止此问题的:
若要指定扩展长度路径,请使用"\\?\"前缀.例如,"\\?\D:\very long path".The 32,767字符的最大路径是近似的,因为"\?“在运行时,系统可以将前缀展开为较长的字符串,此扩展适用于总长度。
例:
"\\?\C:\\product\\eclipse-cpp-2019-06-R-win32-x86_64\\eclipse\\plugins\\com.amazonaws.eclipse.elasticbeanstalk_1.0.0.v201807201743\\com\\amazonaws\\eclipse\\elasticbeanstalk\\server\\ui\\configEditor"https://stackoverflow.com/questions/68492822
复制相似问题