Ничего не происходит при выполнении скрипта python shebang в / usr / local / bin /

Ничего не происходит при выполнении скрипта python shebang в / usr / local / bin /

Надеюсь, кто-нибудь сможет мне помочь. Итак, я сделал простую программу на Python под названием test для тестирования скриптов shebang (я использовал chmod, чтобы сделать ее исполняемой):

#!/usr/bin/python
print "hello"

после того, как я скопировал его в / usr / local / bin /, я попытался вызвать его, набрав в своей оболочке: test, но ничего не произошло ... (ошибок не было)

Адриан


person reuta    schedule 17.06.2015    source источник


Ответы (2)


test на самом деле является встроенной оболочкой:

$ type test
test is a shell builtin

Переименуйте свой сценарий во что-нибудь другое или запустите его напрямую, выполнив /usr/local/bin/test.

person Blender    schedule 17.06.2015
comment
да. Фактически, если запустить его с ./test, он работает :) - person Pynchia; 17.06.2015
comment
Я проголосовал за ваш ответ, чтобы компенсировать глупый отрицательный голос, который вы получили - person Pynchia; 17.06.2015

Блендер прав: «test» - неудачный выбор имени для вашего файла. Уже существует встроенная функция оболочки под названием «test». Было бы то же самое, если бы вы попытались создать скрипт Python под названием «ls». Причина, по которой он работает при выполнении './test', заключается в том, что './' указывает оболочке сделать текущий каталог первым в пути к исполняемому файлу. Если вы переименуете свой скрипт python в 'bangtest' и убедитесь, что у него есть разрешения на выполнение (chmod + x bangtest), он будет работать так, как вы хотите.

person c9mm9dore    schedule 17.06.2015