简体   繁体   中英

Change Directory and Execute Command - Python

I have been struggling a lot with this piece of code i wrote by referring tutorials:

    import os
    os.chdir(f'/home/django/image-io/accounts/john_doe/optimized/')
    cwd = os.getcwd()
    logger.info(f'CURRENT WORKING DIRECOTRY :{cwd}')
    subprocess.Popen(f"optimize-images")

What i am trying to do is dynamically change directory on username (john_doe) in this case and run a command optimize-images inside that directory to optimize all images .

It doesn't seem to work.

When i checked the logs , it says:

optimize-images : "No such directory present"

I am not able to understand , where i am doing wrong. any help would be appreciated.

In this code, We are optimizing the images contained in the optimized folder.

import os
import subprocess
os.chdir(r'/home/django/image-io/accounts/john_doe/optimized')
cwd = os.getcwd()
p=subprocess.Popen([r"optimize-images", cwd])

We need to pass the the parameters in the array list format. You can get more details here .

subprocess.Popen([r"optimize-images", cwd])

Note:

  • r is used to indicate the raw string.
  • f is used when we need to include the value of Python expressions inside strings.

Is this what you need? Popen error: [Errno 2] No such file or directory

Try subprocess.Popen(f"optimize-images", shell = True)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM