Я тестирую приложение, и его исходный код не дает никаких подсказок относительно фактического синтаксиса, кроме вывода справки.

Я пробовал много комбинаций, пытаясь заставить его работать, и он продолжает выводить мне экран справки из-за неверного синтаксиса. Вот использование:

Usage is : ngenerator <options> filepath|directorypath
Where <options> may be :

        -h : print this help notice
        -d : Tell NGenerator that the supplied path is a directory path -o filename : write the source code in filename
        -u Unsafe|Safe[UnsafeWithWrapper : the degree of "unsafeness" of the source, see man

Теперь, если вы посмотрите на это, каков будет правильный способ его работы? Программа не имеет абсолютно никакой документации, и это из мертвого проекта. При первом взгляде вы можете дать мне то, что, по вашему мнению, будет правильным способом ввода синтаксиса?

1 ответ1

0

Чтобы ответить на этот вопрос заголовок .. Вывод справки из командной строки должен быть стандартным. Обычно Linux имеет тенденцию быть более последовательным, чем Windows, но обычно это так:

C:\>attrib /?
Displays or changes file attributes.

ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I]
       [drive:][path][filename] [/S [/D] [/L]]
...

Правила обычно следующие:

  • Все в [] является обязательным
  • Необязательные параметры могут быть вложенными: [/S [/D] [/L]] означает, что вы можете дополнительно указать /S и если вы это сделаете, вы также можете указать /D и / или /L
  • Некоторые параметры являются ситуацией «или / или»: [+R | -R] означает, что вы можете указать +R или -R но не оба одновременно.

Вот еще один пример:

Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
            [-r count] [-s count] [[-j host-list] | [-k host-list]]
            [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name

Обратите внимание, что Windows иногда использует - и иногда использует / для префикса параметров (вздох). Это показывает, что некоторым необязательным параметрам, таким как -n также необходимо значение, count а также, что target_name является обязательным, поскольку его нет в []

Выход из генератора:

Usage is : ngenerator <options> filepath|directorypath
Where <options> may be :

        -h : print this help notice
        -d : Tell NGenerator that the supplied path is a directory path -o filename : write the source code in filename
        -u Unsafe|Safe[UnsafeWithWrapper : the degree of "unsafeness" of the source, see man

...Очень бедный Глядя на это, я бы попробовал: ngenerator -o c:\file.h Он хочет, чтобы c:\file.h уже существовал? Глядя на репозиторий, есть огромный объем кода для разбора такой простой командной строки, которая не дает особой уверенности в приложении. Нужен ли ему C:\\file.h ?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .