2015-09-08 9 views
0

Привета есть простая программа C, что делает следующее, когда я запускаю его с ./a.outКак передать аргумент в C/Bash Scripting?

Пожалуйста, введите ваше имя:

То, что я хочу сделать, это я хочу, чтобы автоматически передать имя без придется ждать приглашения. Я пробовал ./a.out Сэма, но он все равно будет запрашивать имя. Я пытаюсь написать сценарий bash, который сделает это.

Любая помощь будет оценена по достоинству. Примечание. Я не хочу изменять источник C. Все, что я хочу сделать, это передать первый аргумент, не дожидаясь приглашения.

+0

В будущем, если вы хотите, чтобы ваша программа принять аргумент из командной строки, используйте 'ARGC/argv' параметры в' Int основных (INT ARGC, символ ** ARGV) '. 'argc' - общее количество аргументов в командной строке (включая команду, вызывающую программу),' argv [0] '- это команда, которую вы использовали для вызова программы, и' argv [1] 'through' argv [ N-1] '- дополнительные аргументы, переданные в командной строке (представленные в виде текстовых строк). –

ответ

4

Программа читает с stdin. Вы можете направить на стандартный ввод:

echo "Sam" | ./a.out 
+0

Отлично !!! Благодаря! – Sam