Внутри сценария оболочки bash я пытаюсь
- найти исполняемый файл в неизвестной позиции в текущем каталоге (гарантированно существует)
- Запустить этот исполняемый файл, передав в набор файлов в качестве аргументов. 1012 *
- Исполняемого файла не будет в
$PATH
В настоящее время я могу найти исполняемый файл, используя:
#!/bin/bash
EXECUTABLE=$(find . -name 'executable_name*' -type f)
(подстановочный знак суффикса для платформы- связанные причины)
Попытка затем выполнить его не удалась, возвращается:
No such file or directory ./path/to/executable_name
* Примечание. Исполняемый файл действительно работает, если я указываю точный путь, возвращенный find
явно
Попытка всех следующих двух вариантов не сработает с одной и той же ошибкой:
Насколько я понимаю, использование -exec {}
с find
передаст результаты find
в качестве аргументов в исполняемый файл, что противоположно тому, чего я пытаюсь достичь.
Предварительная установка разрешений на выполнение для целевого файла также дает те же результаты