Python 脚本给出“:没有这样的文件或目录”

2024-03-29

我有几个 python 脚本,它们工作得很好,但如果我尝试从 bash 运行它,一个脚本(截至今天早上)开始给我这个错误:

: 没有这样的文件或目录

我可以通过执行以下操作来运行“损坏”的脚本python script_name.py环顾四周后,我发现的一般想法是,也许我的 hashbang 的行尾被改变了(默默地),所以我通过查看工作脚本的行尾和损坏的脚本:set listVI 中的选项如本问题所示 ->查看文本文件中的行结尾 https://stackoverflow.com/questions/3569997/view-line-endings-in-a-text-file

两个文件似乎都以相同的字符结尾(a$)所以我有点不知道如何从这里开始。具体来说,如何实际“看到”行结尾set list这不是正确的方法。

PS:该脚本是可执行的,并且 shebang 就在那里,我说过这只是这 1 个脚本,在周末之前工作正常,但从今天早上开始,它开始给我这个错误。

- 编辑: -

运行脚本通过dos2unix确实让它再次工作,但我想知道有什么方法可以在 VI(M) 中以某种方式可视化行结尾,或者为什么 Geany 首先以某种方式转换行结尾(因为我从来没有在 dos/windows 系统上工作过) 。


从上面的评论来看,您似乎有 dos 行结尾,因此 hashbang 行没有得到正确处理。

行结束样式不显示为:set list在 Vim 中,因为该选项仅在读/写文件时使用。在内存中,行结尾始终是行结尾。文件使用的行结束样式保存在 Vim 每个文件选项中,奇怪地称为fileformat.

要从 Vim 查看/更改行结束样式,可以使用以下命令:

:set fileformat
:set ff

它将显示dos or unix。你要unix, 当然 ;-)。

要快速更改它,您可以使用以下命令保存文件:

:w ++ff=unix

或者如果您愿意:

:set ff=unix

然后正常保存文件。

所以看看所有血淋淋的细节就可以了:help fileformat, :help file-formats and :help fileformats

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 脚本给出“:没有这样的文件或目录” 的相关文章

随机推荐