can’t open file ‘< unprintable file name>’: [Errno 2] No such file or directory

尝试从cmd或者bat中执行带有中文路径的命令时就可能会得到标题中的错误:can’t open file ‘<unprintable file name>’: [Errno 2] No such file or directory。例如下面的代码:

cd /d H:\PyCharmProjects\spider
call H:\PyCharmProjects\spider\venv\Scripts\activate
python "超碰视频\chaop.py"

出这个错误的关键是unprintable file name,而不是文件不存在,当命令执行完成之后,如果直接在终端中再次运行最后一条命令其实是可以执行的。所以要解决这个问题一个办法是不要使用非英文目录或者文件名。除此之外还有另外一个办法,修改cmd的编码,默认的cmd编码是936,通过chcp命令可以查看修改编码:

如果要想bat中的命令能够成功执行,在文件开头加上 chcp 65001即可,修改后如下:

chcp 65001
cd /d H:\PyCharmProjects\spider
call H:\PyCharmProjects\spider\venv\Scripts\activate
python "超碰视频\chaop.py"

执行效果:

☆版权☆

* 网站名称:obaby@mars
* 网址:https://obaby.org.cn/
* 个性:https://oba.by/
* 本文标题: 《can’t open file ‘< unprintable file name>’: [Errno 2] No such file or directory》
* 本文链接:https://obaby.org.cn/2020/06/7196
* 短链接:https://oba.by/?p=7196
* 转载文章请标明文章来源,原文标题以及原文链接。请遵从 《署名-非商业性使用-相同方式共享 2.5 中国大陆 (CC BY-NC-SA 2.5 CN) 》许可协议。


You may also like

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注