Cant connect ubuntu terminal and python script
up vote
0
down vote
favorite
Im trying to use ubuntu terminal through python script.
The script receives the command text(from input() for test), sends it to the terminal, the terminal return the result of the command, script print result in a console.
I already get that I should use subprocess Popen and PIPE, but after inputing 1st command, script print only b'', after 2nd raise error "ValueError: Cannot send input after starting communication"
my test code(yes, its bad):
import subprocess as sb
from subprocess import PIPE, Popen
p=Popen(['gnome-terminal'],stdout=PIPE,stdin=PIPE,stderr=PIPE)
command = 'cmd'
while True:
command = input()
out_data, err_data = p.communicate(command.encode())
print(repr(out_data))
I know I do it in a wrong way, but can't find right. Sorry for English.Thanks.
python ubuntu terminal subprocess
add a comment |
up vote
0
down vote
favorite
Im trying to use ubuntu terminal through python script.
The script receives the command text(from input() for test), sends it to the terminal, the terminal return the result of the command, script print result in a console.
I already get that I should use subprocess Popen and PIPE, but after inputing 1st command, script print only b'', after 2nd raise error "ValueError: Cannot send input after starting communication"
my test code(yes, its bad):
import subprocess as sb
from subprocess import PIPE, Popen
p=Popen(['gnome-terminal'],stdout=PIPE,stdin=PIPE,stderr=PIPE)
command = 'cmd'
while True:
command = input()
out_data, err_data = p.communicate(command.encode())
print(repr(out_data))
I know I do it in a wrong way, but can't find right. Sorry for English.Thanks.
python ubuntu terminal subprocess
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
Im trying to use ubuntu terminal through python script.
The script receives the command text(from input() for test), sends it to the terminal, the terminal return the result of the command, script print result in a console.
I already get that I should use subprocess Popen and PIPE, but after inputing 1st command, script print only b'', after 2nd raise error "ValueError: Cannot send input after starting communication"
my test code(yes, its bad):
import subprocess as sb
from subprocess import PIPE, Popen
p=Popen(['gnome-terminal'],stdout=PIPE,stdin=PIPE,stderr=PIPE)
command = 'cmd'
while True:
command = input()
out_data, err_data = p.communicate(command.encode())
print(repr(out_data))
I know I do it in a wrong way, but can't find right. Sorry for English.Thanks.
python ubuntu terminal subprocess
Im trying to use ubuntu terminal through python script.
The script receives the command text(from input() for test), sends it to the terminal, the terminal return the result of the command, script print result in a console.
I already get that I should use subprocess Popen and PIPE, but after inputing 1st command, script print only b'', after 2nd raise error "ValueError: Cannot send input after starting communication"
my test code(yes, its bad):
import subprocess as sb
from subprocess import PIPE, Popen
p=Popen(['gnome-terminal'],stdout=PIPE,stdin=PIPE,stderr=PIPE)
command = 'cmd'
while True:
command = input()
out_data, err_data = p.communicate(command.encode())
print(repr(out_data))
I know I do it in a wrong way, but can't find right. Sorry for English.Thanks.
python ubuntu terminal subprocess
python ubuntu terminal subprocess
asked Nov 22 at 16:26
eVn
61
61
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
You can do this using the os module:
#!/usr/bin/env python
import os
output = os.listdir('path_to_folder') # output is a list
# Do whatever you want to output
You can read more about what else the os module can do at https://docs.python.org/3/library/os.html. Note that the methods in the module are portable across different OSes, so you can in fact use your script outside Ubuntu.
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
You can do this using the os module:
#!/usr/bin/env python
import os
output = os.listdir('path_to_folder') # output is a list
# Do whatever you want to output
You can read more about what else the os module can do at https://docs.python.org/3/library/os.html. Note that the methods in the module are portable across different OSes, so you can in fact use your script outside Ubuntu.
add a comment |
up vote
0
down vote
You can do this using the os module:
#!/usr/bin/env python
import os
output = os.listdir('path_to_folder') # output is a list
# Do whatever you want to output
You can read more about what else the os module can do at https://docs.python.org/3/library/os.html. Note that the methods in the module are portable across different OSes, so you can in fact use your script outside Ubuntu.
add a comment |
up vote
0
down vote
up vote
0
down vote
You can do this using the os module:
#!/usr/bin/env python
import os
output = os.listdir('path_to_folder') # output is a list
# Do whatever you want to output
You can read more about what else the os module can do at https://docs.python.org/3/library/os.html. Note that the methods in the module are portable across different OSes, so you can in fact use your script outside Ubuntu.
You can do this using the os module:
#!/usr/bin/env python
import os
output = os.listdir('path_to_folder') # output is a list
# Do whatever you want to output
You can read more about what else the os module can do at https://docs.python.org/3/library/os.html. Note that the methods in the module are portable across different OSes, so you can in fact use your script outside Ubuntu.
answered Nov 22 at 16:40
Rhythm sharma
14
14
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53434997%2fcant-connect-ubuntu-terminal-and-python-script%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown