["python","shell","command-line"]
Executing multi-line statements in the one-line command-line

I'm using Python with -c to execute a one-liner loop, i.e.: python -c "for r in range(10): print 'rob'" This works fine. However, if I import a module before the for loop, I get a syntax error: python -c "import sys; for r in range(10): print 'rob'" File "<string>", line 1 import sys; for r in range(10): print 'rob' ^ SyntaxError: invalid syntax How can this be fixed? It's important to me to have this as a one-liner so that I can include it in a Makefile.
You could do echo -e "import sys\nfor r in range(10): print 'rob'" | python Or without pipes: python -c "exec(\"import sys\nfor r in range(10): print 'rob'\")" Or (echo "import sys" ; echo "for r in range(10): print 'rob'") | python Or SilentGhost's answer or Crast's answer.