После загрузки Орла 7.6, я хотел добавить псевдоним к нему. Даже при том, что ./eagle
открывает приложение, bash eagle
результаты cannot execute binary file
ошибка. Я попробовал chmod +x eagle
но это не помогло. Загруженная версия является версией на 64 бита.
Псевдоним, который я создал, следующие:
alias eagle='bash /home/metin/eagle-7.6.0/bin/eagle'
В случае, если Вы задаетесь вопросом, вот uname -a
вывод:
Linux mettinoktay 4.4.0-34-generic #53-Ubuntu SMP Wed Jul 27 16:06:39 UTC
2016 x86_64 x86_64 x86_64 GNU/Linux
Заранее спасибо.
Поэтому eagle
скомпилированный исполняемый файл, не сценарий удара. Вы запутываетесь, потому что Вы часто видите bash ./script
предложенный в качестве способа запустить скрипт удара сохраняется в текстовом файле script
. Например:
$ cat foo.sh
echo "hello!"
$ bash ./foo.sh
hello!
Так, команда bash ./foo.sh
на самом деле означает "выполненный bash
и попросите, чтобы это выполнило команды, найденные в файле foo.sh
". Однако двоичные исполняемые файлы не являются сценариями оболочки, они не список простых команд и не могут быть выполнены тот путь. Например, при попытке работать ls
двоичное использование bash
:
$ bash /bin/ls
/bin/ls: /bin/ls: cannot execute binary file
Это bash
сообщение Вам, это не может выполнить эту вещь, которую Вы сказали этому выполнять, потому что это - двоичный файл и не текстовый файл, содержащий сценарий.
Так, для решения проблемы просто удалите bash
от Вашего псевдонима и, вместо этого, укажите на него на фактическое местоположение eagle
исполняемый файл:
alias eagle='/home/metin/eagle-7.6.0/bin/eagle'
С другой стороны, добавьте /home/metin/eagle-7.6.0/bin/
к Вашему $PATH
путем добавления этой строки к Вашему ~/.bashrc
:
PATH="$PATH:/home/metin/eagle-7.6.0/bin/"
Это позволит Вам выполнить любые исполняемые файлы в /home/metin/eagle-7.6.0/bin/
по имени (путем выполнения eagle
в этом случае) точно так же, как Вы делаете с любыми другими исполняемыми файлами такой как bash
самостоятельно, или ls
.
bash
должен быть удален из псевдонима, который является:
alias eagle='/home/metin/eagle-7.6.0/bin/eagle'
@doug решил эту проблему о комментариях.