Reputation: 1416
How can I print all arguments passed to a python script?
This is what I was trying:
#!/usr/bin/python
print(sys.argv[1:]);
update
How can I save them to a file?
#!/usr/bin/python
import sys
print sys.argv[1:]
file = open("/tmp/test.txt", "w")
file.write(sys.argv[1:])
I get
TypeError: expected a character buffer object
Upvotes: 29
Views: 104296
Reputation: 51
the problem is with the list of args that write can't handle.
You might want to use:
file.write('\n'.join(sys.argv[1:]))
Upvotes: 5
Reputation: 11935
Your last line is wrong.
It should be:
file.writelines(sys.argv[1:])
Upvotes: 4
Reputation: 63902
You'll need to import sys
for that to work.
#!/usr/bin/python
import sys
print sys.argv[1:]
Example
:/tmp% cat foo.py
#!/usr/bin/python
import sys
print (sys.argv[1:]);
:/tmp% python foo.py 'hello world' arg3 arg4 arg5
['hello world', 'arg3', 'arg4', 'arg5']
Upvotes: 56