Depuis toujours quand je mettais en premi=C3=A8re ligne d'un script python :
#!/usr/bin/python
Python =C3=A9tait lanc=C3=A9 sur le script.
Pourquoi maintenant (Debian Squeeze), la commande ./monscript.py donne :
line 1: =EF=BB=BF#!/usr/bin/python: Aucun fichier ou dossier de ce type
$ sh ./monscript.py=20
./monscript.py: 1: =EF=BB=BF#!/usr/bin/python: not found
$ bash ./monscript.py=20
./monscript.py: line 1: =EF=BB=BF#!/usr/bin/python: Aucun fichier ou dossie=
r de ce type
$ which python
/usr/bin/python
python monscript.py marche. Je ne comprends pas.
Auriez-vous une explication ?
--=20
Alain Rpnpif
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/20110423170329.5b288ff2@arrcuis.home
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Jacques Doti
Salut,
On Sat, 23 Apr 2011 17:03:29 +0200, Alain Rpnpif wrote:
Bonjour,
Depuis toujours quand je mettais en première ligne d'un script python : #!/usr/bin/python
Python était lancé sur le script. Pourquoi maintenant (Debian Squeeze), la commande ./monscript.py donne : line 1: #!/usr/bin/python: Aucun fichier ou dossier de ce type
$ sh ./monscript.py ./monscript.py: 1: #!/usr/bin/python: not found
$ bash ./monscript.py ./monscript.py: line 1: #!/usr/bin/python: Aucun fichier ou dossier de ce type
$ which python /usr/bin/python
python monscript.py marche. Je ne comprends pas. Auriez-vous une explication ?
À tout hasard, est-ce que ton script aurait pu transiter par une machine Windows ou bien être transmis par mail ?
Dans ce cas, il est possible que les fins de ligne Unix (LF) aient été remplacés par des fins de ligne Windows (CR-LF). Si c'est le cas, la première ligne de ton script est vue comme #!/usr/bin/python<CR> et c'est donc "/usr/bin/python<CR>" qui est cherché au lieu de "/usr/bin/python".
Pour vérifier, affiche ton script avec un éditeur hexadécimal (ou tape "od -c -tx1 monscript.py" dans un terminal) et regarde si les "n" sont précédés par des "r".
Au pire, lance simplement un "dos2unix monscript.py" : si le soucis est bien là, ça le réglera (et quoi qu'il en soit, ça ne casse rien).
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe" vers En cas de soucis, contactez EN ANGLAIS Archive: http://lists.debian.org/
Salut,
On Sat, 23 Apr 2011 17:03:29 +0200, Alain Rpnpif wrote:
Bonjour,
Depuis toujours quand je mettais en première ligne d'un script python
:
#!/usr/bin/python
Python était lancé sur le script.
Pourquoi maintenant (Debian Squeeze), la commande ./monscript.py
donne :
line 1: #!/usr/bin/python: Aucun fichier ou dossier de ce type
$ sh ./monscript.py
./monscript.py: 1: #!/usr/bin/python: not found
$ bash ./monscript.py
./monscript.py: line 1: #!/usr/bin/python: Aucun fichier ou dossier
de ce type
$ which python
/usr/bin/python
python monscript.py marche. Je ne comprends pas.
Auriez-vous une explication ?
À tout hasard, est-ce que ton script aurait pu transiter par une
machine Windows ou bien être transmis par mail ?
Dans ce cas, il est possible que les fins de ligne Unix (LF) aient été
remplacés par des fins de ligne Windows (CR-LF). Si c'est le cas, la
première ligne de ton script est vue comme
#!/usr/bin/python<CR>
et c'est donc "/usr/bin/python<CR>" qui est cherché au lieu de
"/usr/bin/python".
Pour vérifier, affiche ton script avec un éditeur hexadécimal (ou tape
"od -c -tx1 monscript.py" dans un terminal) et regarde si les "n" sont
précédés par des "r".
Au pire, lance simplement un "dos2unix monscript.py" : si le soucis est
bien là, ça le réglera (et quoi qu'il en soit, ça ne casse rien).
A+
Jean-Jacques
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/4aeb0980d76b6d79e800af6ecce2bc63@webmail.doti.fr
On Sat, 23 Apr 2011 17:03:29 +0200, Alain Rpnpif wrote:
Bonjour,
Depuis toujours quand je mettais en première ligne d'un script python : #!/usr/bin/python
Python était lancé sur le script. Pourquoi maintenant (Debian Squeeze), la commande ./monscript.py donne : line 1: #!/usr/bin/python: Aucun fichier ou dossier de ce type
$ sh ./monscript.py ./monscript.py: 1: #!/usr/bin/python: not found
$ bash ./monscript.py ./monscript.py: line 1: #!/usr/bin/python: Aucun fichier ou dossier de ce type
$ which python /usr/bin/python
python monscript.py marche. Je ne comprends pas. Auriez-vous une explication ?
À tout hasard, est-ce que ton script aurait pu transiter par une machine Windows ou bien être transmis par mail ?
Dans ce cas, il est possible que les fins de ligne Unix (LF) aient été remplacés par des fins de ligne Windows (CR-LF). Si c'est le cas, la première ligne de ton script est vue comme #!/usr/bin/python<CR> et c'est donc "/usr/bin/python<CR>" qui est cherché au lieu de "/usr/bin/python".
Pour vérifier, affiche ton script avec un éditeur hexadécimal (ou tape "od -c -tx1 monscript.py" dans un terminal) et regarde si les "n" sont précédés par des "r".
Au pire, lance simplement un "dos2unix monscript.py" : si le soucis est bien là, ça le réglera (et quoi qu'il en soit, ça ne casse rien).
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/20110425093807.4e2312cf@arrcuis.home