use subprocess to replace os.system()