파이썬 코드에서 리눅스 명령 실행을 하고 싶다.
찾아보니 두가지 방법이 있는 것 같다.
#!/usr/bin/phtyon
# -*- coding: UTF-8 -*-
import os
print os.system("ls -al")
말 그대로 리눅스 명령어를 실행하는건데 이렇게 실행하고 콘솔에 출력은 되지만 변수로 받아서 파이썬 코드에서 사용하는 것은 안된다고 한다.
#!/usr/bin/phtyon
# -*- coding: UTF-8 -*-
import subprocess
subprocess.call(["ls", "-al"])
subprocess.call("ls -al", shell=True)
두가지 방법으로 어떤걸 써도 된다고 하는데.... 잘 모르니 쉬워 보이는 두번째 방법으로 -_-;;
subprocess 를 이용하면 실행 결과값을 받아서 파이썬 코드 안에서 사용할 수 있다.
아래 코드는 ls -al 의 결과를 한줄씩 출력 하는 샘플
#!/usr/bin/phtyon
# -*- coding: UTF-8 -*-
import subprocess
temp = subprocess.call(["ls", "-al"])
lines = temp.split("\n")
for line in lines:
print(line)