Не может передать аргумент Python с “#!/usr/bin/env Python”

Согласно документам и старым ответам:

.carousel('cycle')

и

.carousel('pause')

должны выполнять работу, или я ошибаюсь? См. Также этот старый ответ . Даже если это не характерно для BS4, операции все еще там и должны делать то же самое в соответствии с документами, которые я проверил, и вы связались.

Я не вижу способа полностью приостановить его при инициализации, но, возможно, я что-то упустил. Но вы можете просто позвонить .carousel('pause') сразу после init, что должно соответствовать вашим требованиям.

65
задан Matt Joiner 12 March 2011 в 07:13
поделиться

3 ответа

Когда вы используете shebang в Linux, вся остальная часть строки после имени интерпретатора интерпретируется как один аргумент. python -u передается на env, как если бы вы набрали: /usr/bin/env 'python -u'. /usr/bin/env ищет двоичный файл с именем python -u, которого нет.

15
ответ дан kenorb 24 November 2019 в 15:26
поделиться

Передача аргументов в строку shebang не является стандартной и, как вы уже экспериментировали, не работает в сочетании с env в Linux. Решение в bash заключается в использовании встроенной команды "set" для установки необходимых опций. Я думаю, что вы можете сделать то же самое для установки небуферизованного вывода stdin с помощью команды python.

my2c

13
ответ дан 24 November 2019 в 15:26
поделиться

Это неуклюжесть и требует bash, но это работает:

#!/bin/bash

python -u <(cat <<"EOF"
# Your script here
print "Hello world"
EOF
)
5
ответ дан 24 November 2019 в 15:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: