Какая-то очередная смертельная битва на костылях.
https://www.howtogeek.com/6...indows-command-line/
Автор учит людей экзотическим методам «обхода» пробелов в именах файлов, но даёт слишком мало информации, почему что-то работает, а что-то нет. Например, важно помнить, что в Windows нет никакого «специального символа», который разделяет параметры. Командная строка передаётся процессу в виде простой строки, какая была использована при вызове CreateProcess(), а разбивка строки на параметры происходит уже силами самой программы и используемых ею библиотек. Например, можно заюзать функцию WinAPI CommandLineToArgvW(), чтобы сделать примерно то же (см. Рэймонда Чена), что делают библиотеки в Цэ. В VBScript есть объект WScript.Arguments, который красиво парсит командную строку, передаваемую WScript.EXE или CScript.EXE, ну и так далее. Именно поэтому, когда ушлые гики советуют брать в кавычки не всё имя файла, а только его часть с пробелом, может случиться конфуз, в ходе которого программа, не готовая к таким выкрутасам, скажет, что нет такого файла.
30 Oct
2020
и вот почему в архаичном юниксе уже изначально были argc и argv[] а эти почему-то не переняли опыт?