How to Include Python Script in Bash Script

To run a multiline python script in a bash shell script from the command line, do the following:

python - <<EOF
import random
print(random.random())
EOF

Using cat:

cat <<EOF | python -
import random
print(random.random())
EOF

Pass bash variable to python script through stdin:

some_bash_var="world"
 
script="
import sys
name = sys.stdin.read().rstrip()
print('hello ' + name)
"
echo "${some_bash_var}" | python -c "${script}"

Output:

$ some_bash_var="world"
$ script="
→ import sys
→ name = sys.stdin.read().rstrip()
→ print('hello ' + name)
→ "
$ echo "${some_bash_var}" | python -c "${script}"
hello world
Did this help you? Please let me know with a comment. Thank you
Posted .

1 comment (RSS)

  1. anonymous

    Alternatively, something like this works as well:

    eval python - << EOF

    import sys

    from pprint import pprint

    pprint(sys.path)

    EOF

Leave a comment