Здравствуйте!
Проблема такая. На моем VPS есть файл, который должен конвертироваться с помощью проги с переданными ей аргументами.
Заходя на серв через терминал в линуксе и выполняя команду, конвертированный файл создается в папке назначения. Команда ниже.
biom convert -i web/bogdan.kirukhin67.example.com/public_html/files/otu_table_filtered.biom -o web/bogdan.kirukhin67.example.com/public_html/files/file.txt --to-tsv --header-key taxonomy
Собсвенно, пробовал написать в PHP тоже самое следующего типа;
exec("biom convert -i web/bogdan.kirukhin67.example.com/public_html/files/otu_table_filtered.biom -o web/bogdan.kirukhin67.example.com/public_html/files/file.txt --to-tsv --header-key taxonomy")
При вызове через PHP ничего не происходит. В чем может быть проблема?
Может быть это из за того, что при входе через терминал я авторизуюсь под правами админа, а в случае с вызовом через PHP нет авторизации...
В общем, подскажите пожалуйста, как заставить все заработать. Заранее спасибо!:)
Для начала - полные, а не относительные пути к файлам. И к программе biom желательно тоже.
Потом можно взглянуть на документацию exec и обнаружить, что она возвращает то, что было выведено в терминал - ошибки, скорее всего, там.
Sam67, потому что "в терминале напрямую" у вас в PATH есть путь к этому бинарнику.
В той оболочке, в которой будет запущена команда в exec, могут быть иные настройки окружения. Абсолютные пути позволят вам не париться по этому поводу.