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
Pierre Maurette
Bruno :
Bonjour à tous,
Sous le répertoire /home/bruno,j'écris dans un simple fichier texte, p1.py, le script suivant:
#! /usr/bin/env python
print("Hello World") print()
si je lance $python ./p1.py cela fonctionne.
par contre aprés avoir fait un chmod 777 du fichier, si je fais $ ./p1.py
j'ai le message
: Aucun fichier ou dossier de ce type
Je ne comprends pas pourquoi ?
Si vous avez une idée ?
Vérifiez à tout hasard même si c'est évident et que vous l'avez déjà fait que lancer /python/ a bien l'effet attendu (lancer python en interactif). Encore que je ne crois pas qu'un Linux tourne aujourd'hui sans /python/ dans le PATH, et le message serait différent. Sinon, j'ai eu le même souci, venant dans ce cas du caractère de fin de ligne sur la première ligne. Le shell cherchait un exécutable du nom de "python" + 0x0D, chez moi la cause en était bien entendu entre mes Windows, subversion et paramétrage des fichiers texte dans Eclipse/Pydev. Regardez avec un éditeur hexa, et/ou tentez un fichier minimal tout neuf avec un éditeur sous Linux qui ne complote pas avec l'ennemi. Mais c'est peut-être tout à fait autre chose. Ou juste un peu autre chose mais "un peu" du même tonneau ?
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas l'interprêteur python. Mais la première ligne est à mon avis d'abord analysée par le shell qui est peut-être plus pointilleux. Ou plus sommaire dans son analyse de la ligne.
-- Pierre Maurette
Bruno :
Bonjour à tous,
Sous le répertoire /home/bruno,j'écris dans un simple fichier texte, p1.py,
le script suivant:
#! /usr/bin/env python
print("Hello World")
print()
si je lance
$python ./p1.py
cela fonctionne.
par contre aprés avoir fait un chmod 777 du fichier, si je fais
$ ./p1.py
j'ai le message
: Aucun fichier ou dossier de ce type
Je ne comprends pas pourquoi ?
Si vous avez une idée ?
Vérifiez à tout hasard même si c'est évident et que vous l'avez déjà
fait que lancer /python/ a bien l'effet attendu (lancer python en
interactif). Encore que je ne crois pas qu'un Linux tourne aujourd'hui
sans /python/ dans le PATH, et le message serait différent.
Sinon, j'ai eu le même souci, venant dans ce cas du caractère de fin de
ligne sur la première ligne. Le shell cherchait un exécutable du nom de
"python" + 0x0D, chez moi la cause en était bien entendu entre mes
Windows, subversion et paramétrage des fichiers texte dans
Eclipse/Pydev.
Regardez avec un éditeur hexa, et/ou tentez un fichier minimal tout
neuf avec un éditeur sous Linux qui ne complote pas avec l'ennemi.
Mais c'est peut-être tout à fait autre chose. Ou juste un peu autre
chose mais "un peu" du même tonneau ?
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas
l'interprêteur python. Mais la première ligne est à mon avis d'abord
analysée par le shell qui est peut-être plus pointilleux. Ou plus
sommaire dans son analyse de la ligne.
Sous le répertoire /home/bruno,j'écris dans un simple fichier texte, p1.py, le script suivant:
#! /usr/bin/env python
print("Hello World") print()
si je lance $python ./p1.py cela fonctionne.
par contre aprés avoir fait un chmod 777 du fichier, si je fais $ ./p1.py
j'ai le message
: Aucun fichier ou dossier de ce type
Je ne comprends pas pourquoi ?
Si vous avez une idée ?
Vérifiez à tout hasard même si c'est évident et que vous l'avez déjà fait que lancer /python/ a bien l'effet attendu (lancer python en interactif). Encore que je ne crois pas qu'un Linux tourne aujourd'hui sans /python/ dans le PATH, et le message serait différent. Sinon, j'ai eu le même souci, venant dans ce cas du caractère de fin de ligne sur la première ligne. Le shell cherchait un exécutable du nom de "python" + 0x0D, chez moi la cause en était bien entendu entre mes Windows, subversion et paramétrage des fichiers texte dans Eclipse/Pydev. Regardez avec un éditeur hexa, et/ou tentez un fichier minimal tout neuf avec un éditeur sous Linux qui ne complote pas avec l'ennemi. Mais c'est peut-être tout à fait autre chose. Ou juste un peu autre chose mais "un peu" du même tonneau ?
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas l'interprêteur python. Mais la première ligne est à mon avis d'abord analysée par le shell qui est peut-être plus pointilleux. Ou plus sommaire dans son analyse de la ligne.
-- Pierre Maurette
Francois Lafont
Bonjour,
Sans vouloir mettre en doute votre parole, c'est possible d'avoir un copié-collé du résultat des commandes suivantes : :-)
Et avec le chemin absolu, ça passe ? (/home/bruno/p1.py)
-- François Lafont
Tonton Th
On 11/12/2011 12:29 PM, Pierre Maurette wrote:
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas l'interprêteur python. Mais la première ligne est à mon avis d'abord analysée par le shell qui est peut-être plus pointilleux. Ou plus sommaire dans son analyse de la ligne.
L'interprétation du shebang se passe dans le kernel.
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas
l'interprêteur python. Mais la première ligne est à mon avis d'abord
analysée par le shell qui est peut-être plus pointilleux. Ou plus
sommaire dans son analyse de la ligne.
L'interprétation du shebang se passe dans le kernel.
--
Nous vivons dans un monde étrange/
http://foo.bar.quux.over-blog.com/
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas l'interprêteur python. Mais la première ligne est à mon avis d'abord analysée par le shell qui est peut-être plus pointilleux. Ou plus sommaire dans son analyse de la ligne.
L'interprétation du shebang se passe dans le kernel.
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas l'interprêteur python. Mais la première ligne est à mon avis d'abord analysée par le shell qui est peut-être plus pointilleux. Ou plus sommaire dans son analyse de la ligne.
Ah, si c'est ça le souci, je trouve que c'est bien sournois. :-)
Dans ce cas, pour le vérifier, faire :
$ cat p1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n n n B l a b l a n 0000040 n 0000041
Il faut qu'après « python » il y ait soit un espace soit n mais rien d'autre.
-- François Lafont
Le 12/11/2011 12:29, Pierre Maurette a écrit :
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas
l'interprêteur python. Mais la première ligne est à mon avis d'abord
analysée par le shell qui est peut-être plus pointilleux. Ou plus
sommaire dans son analyse de la ligne.
Ah, si c'est ça le souci, je trouve que c'est bien sournois. :-)
Dans ce cas, pour le vérifier, faire :
$ cat p1.py | od -c
0000000 # ! / u s r / b i n / e n v
0000020 p y t h o n n n B l a b l a n
0000040 n
0000041
Il faut qu'après « python » il y ait soit un espace soit n mais rien
d'autre.
Nota: les caractères fin de ligne DOS/Windows 0D 0A ne gênent pas l'interprêteur python. Mais la première ligne est à mon avis d'abord analysée par le shell qui est peut-être plus pointilleux. Ou plus sommaire dans son analyse de la ligne.
Ah, si c'est ça le souci, je trouve que c'est bien sournois. :-)
Dans ce cas, pour le vérifier, faire :
$ cat p1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n n n B l a b l a n 0000040 n 0000041
Il faut qu'après « python » il y ait soit un espace soit n mais rien d'autre.
Bien vu. En tapant : ./p1.py 2>p1.out on voit bien ce qui se passe.
-- Alain.
Pierre Maurette
Francois Lafont :
Bonjour,
Bonjour
Sans vouloir mettre en doute votre parole,
Vu le mal que font les mythomanes en tout genre à usenet, j'apprécierais moyennement. En revanche, incompétent en Linux/Unix et python, je l'accepte sans problème.
c'est possible d'avoir un copié-collé du résultat des commandes suivantes : :-)
Et avec le chemin absolu, ça passe ? (/home/bruno/p1.py)
J'ai vite fait une manip sur une machine du week-end (Debian Squeeze virtualisée) où rien n'était installé. Sous Eclipse + Pydev + EHEP comme éditeur, tests dans un terminal bien entendu. <code> #! /usr/bin/env python
print 'hello' </code>
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n n n p r i n t ' h 0000040 e l l o ' n 0000046 :~/EclipseWorkspaces/C/testpy$ ./test1.py hello
Je remplace les LF par des CRLF, et:
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n r n r n p r i n t 0000040 ' h e l l o ' r n 0000051 :~/EclipseWorkspaces/C/testpy$ ./test1.py : Aucun fichier ou dossier de ce type
Ce qui ne signifie pas pour autant que ce soit le souci de Bruno.
-- Pierre Maurette
Francois Lafont :
Bonjour,
Bonjour
Sans vouloir mettre en doute votre parole,
Vu le mal que font les mythomanes en tout genre à usenet,
j'apprécierais moyennement. En revanche, incompétent en Linux/Unix et
python, je l'accepte sans problème.
c'est possible d'avoir un
copié-collé du résultat des commandes suivantes : :-)
Et avec le chemin absolu, ça passe ? (/home/bruno/p1.py)
J'ai vite fait une manip sur une machine du week-end (Debian Squeeze
virtualisée) où rien n'était installé. Sous Eclipse + Pydev + EHEP
comme éditeur, tests dans un terminal bien entendu.
<code>
#! /usr/bin/env python
print 'hello'
</code>
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ cat test1.py | od
-c
0000000 # ! / u s r / b i n / e n v
0000020 p y t h o n n n p r i n t ' h
0000040 e l l o ' n
0000046
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ ./test1.py
hello
Je remplace les LF par des CRLF, et:
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ cat test1.py | od
-c
0000000 # ! / u s r / b i n / e n v
0000020 p y t h o n r n r n p r i n t
0000040 ' h e l l o ' r n
0000051
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ ./test1.py
: Aucun fichier ou dossier de ce type
Ce qui ne signifie pas pour autant que ce soit le souci de Bruno.
Vu le mal que font les mythomanes en tout genre à usenet, j'apprécierais moyennement. En revanche, incompétent en Linux/Unix et python, je l'accepte sans problème.
c'est possible d'avoir un copié-collé du résultat des commandes suivantes : :-)
Et avec le chemin absolu, ça passe ? (/home/bruno/p1.py)
J'ai vite fait une manip sur une machine du week-end (Debian Squeeze virtualisée) où rien n'était installé. Sous Eclipse + Pydev + EHEP comme éditeur, tests dans un terminal bien entendu. <code> #! /usr/bin/env python
print 'hello' </code>
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n n n p r i n t ' h 0000040 e l l o ' n 0000046 :~/EclipseWorkspaces/C/testpy$ ./test1.py hello
Je remplace les LF par des CRLF, et:
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n r n r n p r i n t 0000040 ' h e l l o ' r n 0000051 :~/EclipseWorkspaces/C/testpy$ ./test1.py : Aucun fichier ou dossier de ce type
Ce qui ne signifie pas pour autant que ce soit le souci de Bruno.
-- Pierre Maurette
Francois Lafont
Bonsoir,
Le 12/11/2011 15:00, Pierre Maurette a écrit :
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n n n p r i n t ' h 0000040 e l l o ' n 0000046 :~/EclipseWorkspaces/C/testpy$ ./test1.py hello
Je remplace les LF par des CRLF, et:
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n r n r n p r i n t 0000040 ' h e l l o ' r n 0000051 :~/EclipseWorkspaces/C/testpy$ ./test1.py : Aucun fichier ou dossier de ce type
Ce qui ne signifie pas pour autant que ce soit le souci de Bruno.
Certes, mais à mon avis il y a une très grosse probabilité que ça soit ça.
-- François Lafont
Bonsoir,
Le 12/11/2011 15:00, Pierre Maurette a écrit :
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c
0000000 # ! / u s r / b i n / e n v
0000020 p y t h o n n n p r i n t ' h
0000040 e l l o ' n
0000046
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ ./test1.py
hello
Je remplace les LF par des CRLF, et:
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c
0000000 # ! / u s r / b i n / e n v
0000020 p y t h o n r n r n p r i n t
0000040 ' h e l l o ' r n
0000051
pierre@squeezegnome64:~/EclipseWorkspaces/C/testpy$ ./test1.py
: Aucun fichier ou dossier de ce type
Ce qui ne signifie pas pour autant que ce soit le souci de Bruno.
Certes, mais à mon avis il y a une très grosse probabilité que ça soit ça.
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n n n p r i n t ' h 0000040 e l l o ' n 0000046 :~/EclipseWorkspaces/C/testpy$ ./test1.py hello
Je remplace les LF par des CRLF, et:
:~/EclipseWorkspaces/C/testpy$ cat test1.py | od -c 0000000 # ! / u s r / b i n / e n v 0000020 p y t h o n r n r n p r i n t 0000040 ' h e l l o ' r n 0000051 :~/EclipseWorkspaces/C/testpy$ ./test1.py : Aucun fichier ou dossier de ce type
Ce qui ne signifie pas pour autant que ce soit le souci de Bruno.
Certes, mais à mon avis il y a une très grosse probabilité que ça soit ça.