Не знаю, как еще это выразить, но я знаю, что делаю что-то не так.
char *temp2= "/shares/mJim";
char ourList[1024];
fgets(ourList, 1024, modified)
sprintf(sysString, "grep -c %s %s", ourList, temp2);
Теперь fgets выполняет свою работу, но когда я пытаюсь сформировать эту строку с помощью sprintf, я получаю grep -c Lanuncher.ini
, а остальное отсутствует. Теперь вот кикер, если я поменяю порядок следующим образом:
sprintf(sysString, "grep -c %s %s", temp2, ourList);
Результатом будет то, что я хочу, но и недопустимый поиск grep: grep -c /shares/mJim Lanucher.ini
Также, если я сделаю это:
sprintf(sysString, "grep -c %s %s", temp2, temp2);
Создает ожидаемую строку (grep -c /shares/mJim /shares/mJim
). Кто-нибудь знает, что происходит?
Хорошо для ввода это простой текстовый файл, который представляет собой список из одного столбца:
Launcher.ini
bits.exe
etc....
Мусор в этом случае - необычно короткая строка, о которой я упоминал. Когда я распечатываю, что наш ourList, он возвращает Launcher.ini.