Я попытаюсь объяснить свою проблему. Если я выполню следующую команду
find ~ -name file.txt
в Linux все файлы с именем file.txt
будут отображаться на экране консоли. Я хочу написать программу на C, которая будет делать то же самое, используя функцию execlp
для поиска всех файлов с определенным именем, например file.txt
.
Если я сделаю что-то вроде этого:
execlp("find","find","-name","file.txt",NULL);
компилируется нормально, но при выполнении показывает только файл с именем file.txt
, который находится в текущем рабочем каталоге. Если я сделаю что-то подобное в своей программе:
execlp("find","find","~","-name","file.txt");
компилируется нормально, но при выполнении выдает следующую ошибку:
find: `~': No such file or directory.
Какие параметры я должен указать функции execlp
для поиска file.txt
во всех доступных каталогах? Мне нужно сделать это с помощью функции execlp
. Большое спасибо!
~
из строки cmd, но не в вызовеexeclp
. Используйте полный путь или укажите элемент каталога, который действительно существует (на ум приходит.
). - person WhozCraig   schedule 21.10.2013