Bug 220264 - #!/usr/bin/env python -tt doesn't work
#!/usr/bin/env python -tt doesn't work
Status: CLOSED NOTABUG
Product: Fedora
Classification: Fedora
Component: coreutils (Show other bugs)
6
All Linux
medium Severity medium
: ---
: ---
Assigned To: Tim Waugh
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2006-12-19 18:21 EST by Scott Tsai
Modified: 2007-11-30 17:11 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-12-20 02:58:47 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Scott Tsai 2006-12-19 18:21:49 EST
Description of problem:
A file starting with '#!/usr/bin/env python -tt'
does not behave the same when executed as:
python -tt FILE

Version-Release number of selected component (if applicable):
coreutils-5.97-12.2.fc6

How reproducible:
always

Steps to Reproduce:
1. printf '#!/usr/bin/env python -tt\nprint 1\n' > t
2. chmod +x t
3. ./t
4. python -tt t
Actual results:
/usr/bin/env: python -tt: No such file or directory

Expected results:
1

Additional info:
Works on MacOS 10.4, with its FreeBSD derived /usr/bin/env
Comment 1 Jim Meyering 2006-12-20 02:58:47 EST
When invoking any program via #!, only two things can be on that first line: the
first (everything up to first white space byte) is taken as a program name. 
Everything after that first bit of white space is grouped together as a single
"argument" to that program.  In your case, "python -tt" is interpreted as a
program name, and of course is not found.

Instead, you can do something like this:

cat <<EOF > t
#!/usr/bin/env python
import warnings
warnings.filterwarnings("error", category=SyntaxWarning)
print 1
EOF
Comment 2 Scott Tsai 2006-12-20 06:45:02 EST
Thanks for the explaination.

Note You need to log in before you can comment on or make changes to this bug.