У меня возникла проблема с выяснением того, как я могу поддерживать функции конвейера и перенаправления оболочки, если обнаружу, что отсутствуют аргументы командной строки.
Если я, например, использую вызов scanf, он будет работать с перенаправлением или каналом из оболочки, но в отсутствие этого я получаю приглашение, которое мне не нужно.
Я хотел бы принять аргументы командной строки через argv [], канал или перенаправление, но я не могу понять, как это сделать без получения приглашения. Если я, например, попробую что-то вроде этого:
if(argc < 2)
exit(0);
Тогда программа прекратит работу, если я попробую это:
echo arg | myProgram
Или это:
myProgram < fileWithArgument
Я пытался найти это, но я всегда получаю некоторые ссылки на скрипты bash.