Найти - Пользователи
Полная версия: Наружу
Начало » Python для новичков » Наружу
1
Atero.zl
Здравствуйте.
Надо после выполнения скрипта использовать результаты выполнения функции внутри BASH-скрипта,подскажите пожалуйста как это сделать.
Заранее спасибо.
sakal
  • PIPE: python ./script_name.py | bash_script.sh
  • external call: import subprocess; subprocess.call()
py.user.next
output=$(./script.py)
Atero.zl
py.user.next
Без sudo выдаёт Premission denied(под рутом)
c sudo: ./script.py: command not found
Всё разобрался,но вот пример кода:
def a():
f = open('error','r')
col = f.readlines()
collv2 = len(col)
return collV2
a()
а вызов происходит по output=$(python control.py)
echo $output выдаёт пустую строку, хотя по факту должно выдавать единицу
py.user.next
Atero.zl
выдаёт Premission denied
Permission
выполни
chmod u+x script.py

Atero.zl
echo $output
выдаёт пустую строку
это потому что у тебя и скрипт неправильный тоже
чтобы убедиться в том, что он работает, сначала его надо запустить из командной строки (не в интерпретаторе)
Atero.zl
py.user.next
чтобы уб
я проверяю,всё вроде верно,не могли бы подсказать в чём ошибка?
py.user.next
Atero.zl
я проверяю,всё вроде верно
этот скрипт ничего не выводит

запускай его через ./script.py, поправляй его, пока он не выведет данные
Atero.zl
py.user.next
py.user.next
я его уже вывожу через python control.py
py.user.next
Atero.zl
я его уже вывожу через python control.py
прямо в скрипте должен быть записан способ запуска
потому что “python” может ссылаться куда угодно, в том числе и на неподходящую версию
строить bash-скрипт таким образом - ненадёжно

Atero.zl
я его уже вывожу
то, что ты выложил, ничего не выведет
а если выводит, значит, ты не выложил текущий скрипт
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB