theeinfamousone theeinfamousone - 2 months ago 16
Python Question

(Errno 22) invalid argument when trying to run a python program from a bat file

I'm following this exactly but it is not working https://youtu.be/qHcHUHF_Qfo?t=438

I type the location in the run window - C:\Users\Zachary lastName\mypythonscripts\hello.py

I get - can't open file 'c:\users"Zachary': [Errno 22] invalid argument

the bat file is -

@py C:\Users\Zachary lastName\mypythonscripts\hello.py %*

@pause

i've searched everywhere and can't find an answer, I also edited the path environment variable so I can just type the name of the program in the run window but again I get the error. Any help is appreciated!

Answer

You have to enclose the path name in quotes because the space means a new argument is expected, and it's not finding the file:

@py "C:\Users\Zachary lastName\mypythonscripts\hello.py" %*
@pause

Now the file path should not interfere. Usernames with spaces can become a problem for paths as their space can cause issues. Just enclose it in quotes to convert to string.

Comments