Shebang, указывающий на скрипт (также имеющий shebang), эффективно игнорируется

Рассмотрим следующий код:

#!/usr/bin/env python

import sys

print "Hello! I've got %r as input." % sys.stdin.read()

Это chmod +xed скрипт в /usr/local/bin/my_interpreter. А это:

#!/usr/local/bin/my_interpreter

This is intended to be passed "as is" to python script.

Это chmod +xed скрипт, который пытается его использовать. Если я повторяю что-то | /usr/local/bin/my_interpreter, он работает нормально, но как только я пытаюсь выполнить приведенный выше скрипт, происходит сбой с

/Users/modchan/test_interpreter/foo.bar: line 3: This: command not found

Кажется, что foo.barмолча перенаправляется на bash вместо моего сценарий. Что я делаю неправильно? Как заставить это работать?

18
задан toriningen 3 April 2012 в 06:32
поделиться