ffmpeg.exe -i "%1"
vs.
ffmpeg.exe -i %1
Что дает наличие кавычек?
C/C++
Командная строка CMD
если в переменной есть пробелы, то прочтёт только до первого пробела
к примеру "С:\Новая папка" увидит как С:\Новая
в командной строке вообще передача параметров и много чего имеет существенную корявость
ещё ffmpeg.exe вообще немного по-другому работает, помню с ней мучался
к примеру "С:\Новая папка" увидит как С:\Новая
в командной строке вообще передача параметров и много чего имеет существенную корявость
ещё ffmpeg.exe вообще немного по-другому работает, помню с ней мучался
Айдын Айкен
вот нормальный ответ, а не скопированный с chatgpt )
Андрей Орлов
Я тоже сейчас застрял с ffmpeg в VirtualDub
https://audiophilesoft.ru/forum/27-221-1


Кавычки в командной строке CMD используются для обозначения пути к файлу или имени файла, содержащего пробелы или другие специальные символы, которые могут быть интерпретированы как часть команды.
В данном случае, кавычки в первом примере ("%"1"") обрамляют переменную %1, которая обычно используется для передачи параметров командной строки в пакетном файле (batch file). Кавычки нужны, чтобы обозначить, что все, что находится внутри кавычек, является одним параметром.
Во втором примере (%1) кавычки не используются, поскольку здесь передается только один параметр, который не содержит пробелов или других специальных символов.
Таким образом, в обоих случаях команда ffmpeg.exe используется для обработки файла, имя которого передается в параметре %1, но использование кавычек зависит от того, содержит ли имя файла пробелы или другие специальные символы.
В данном случае, кавычки в первом примере ("%"1"") обрамляют переменную %1, которая обычно используется для передачи параметров командной строки в пакетном файле (batch file). Кавычки нужны, чтобы обозначить, что все, что находится внутри кавычек, является одним параметром.
Во втором примере (%1) кавычки не используются, поскольку здесь передается только один параметр, который не содержит пробелов или других специальных символов.
Таким образом, в обоих случаях команда ffmpeg.exe используется для обработки файла, имя которого передается в параметре %1, но использование кавычек зависит от того, содержит ли имя файла пробелы или другие специальные символы.
Кавычки используются в командной строке CMD для того, чтобы обозначить, что все, что находится внутри кавычек, является одним аргументом командной строки.
В случае с командой ffmpeg.exe -i "%1", использование кавычек вокруг "%1" обозначает, что это аргумент командной строки и что его содержимое может содержать пробелы. Когда CMD выполняет эту команду, она поймет, что все, что находится внутри кавычек, должно быть рассматриваемым как один аргумент.
Если бы кавычки не использовались в этой команде, и аргумент %1 содержал бы пробелы, CMD рассматривал бы его как два отдельных аргумента, что может привести к ошибкам в работе программы.
Таким образом, использование кавычек вокруг "%1" в команде ffmpeg.exe -i "%1" помогает обеспечить корректную обработку аргумента командной строки в случае, если он содержит пробелы или другие специальные символы.
В случае с командой ffmpeg.exe -i "%1", использование кавычек вокруг "%1" обозначает, что это аргумент командной строки и что его содержимое может содержать пробелы. Когда CMD выполняет эту команду, она поймет, что все, что находится внутри кавычек, должно быть рассматриваемым как один аргумент.
Если бы кавычки не использовались в этой команде, и аргумент %1 содержал бы пробелы, CMD рассматривал бы его как два отдельных аргумента, что может привести к ошибкам в работе программы.
Таким образом, использование кавычек вокруг "%1" в команде ffmpeg.exe -i "%1" помогает обеспечить корректную обработку аргумента командной строки в случае, если он содержит пробелы или другие специальные символы.
Похожие вопросы
- В LINUX OS Написать программу, которая из командной строки получает целое число N и некоторый текст “Text”.
- Найти максимальный элементы в строке матрицы
- Как реализовать поиск похожей строки в базе данных?
- Программирование на С++ (строки)
- Двумерный динамический массив с неизвестны количеством столбиков или строк
- Передача строк в функцию С++
- Синтаксическая ошибка: константа строки в с++
- C++: "С-Строка" и ошибка
- С++. Упорядочить строки массива A в порядке убывания сумм цифр первого элемента каждой строки.
- Переход на следующую строку при считывании данных из файла в Си