": 没有相应的文件和目录"

Pro*_*404 1 python unix linux ubuntu ubuntu-12.04

Ubuntu版本:12.04 Python版本:2.7.3

我有一个开始的脚本(prawn.py):

#! /usr/bin/env python
from random import choice
import os
from webbrowser import open_new
import urllib
print("!")
def getsource(url): page=urllib.urlopen(url);sourcecodey=page.read();page.close;return sourcecodey
#etc
Run Code Online (Sandbox Code Playgroud)

当我在终端中运行它时:

$ ./prawn.py
: No such file or directory
Run Code Online (Sandbox Code Playgroud)

当我将第一行更改为#!在/ usr/bin中/蟒蛇

$ which python
/usr/bin/python
$ ./prawn.py
bash: ./prawn.py: /usr/bin/python^M: bad interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)

但是当我使用"python prawn.py"运行它时,它可以工作.

我该如何解决?

ick*_*fay 5

^M你使用DOS行结束表示.请改用UNIX行结尾.您可以尝试使用以下方法将文件从DOS行结尾转换为UNIX行结尾sed:

sed -E 's/\'$'\r''$//' < prawn.py > prawn.unix.py
Run Code Online (Sandbox Code Playgroud)

转换后的文件将在prawn.unix.py.

  • 如果安装[dos2unix](http://manpages.ubuntu.com/manpages/natty/man1/dos2unix.1.html),使用它将比sed调用更容易. (3认同)