1

Я хотел бы иметь функцию (или, может быть, своего рода исполняемый файл), которую можно вызывать через Терминал, где бы я ни находился (из любого каталога), и эта функция выполняет простую работу по преобразованию единиц измерения, например, из метра в футы. Реализуется ли такая задача? Я могу кодировать на Fortran90 и C, первый из которых более знаком, чем второй. Я работаю на платформе MacOS X

Для простоты предположим, что моя функция, написанная на C, берет строку и печатает ее в стандартном выводе:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char *argv[])
{
    char str[4];
    strcpy(str, argv[1]);
    printf("input = %s \n",str);       
}

Затем компилируем его для генерации исполняемого файла с именем "example". Я хотел бы иметь возможность вызывать эту программу глобально, так что, выполнив $example abc она напечатает input = abc в окне терминала. Я попытался поместить этот исполняемый файл в тот же каталог, что и gcc (gfortran, gcc, g++ и т.д.), Поскольку этот путь был установлен для переменной среды, но он не работал. Я не могу позвонить из-за пределов этого каталога.

1 ответ1

0

Чтобы вызвать его из любой точки вашей системы, ваше приложение должно находиться в каталоге, который является частью переменной PATH.

По вопросу о терминале:

echo "$PATH"

или же

printf "%s\n" $PATH

и вы увидите что-то вроде этого:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Это список мест, где система будет искать приложение.

Переместите скомпилированное приложение в любой из этих каталогов: например, usr/local/bin , включите исполняемый бит (chmod +x) и все.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .