Создание конвертора единиц, который можно вызвать глобально через терминал

Я хотел бы иметь функцию (или, может быть, своего рода исполняемый файл), которую можно вызывать через терминал из любой точки мира (из любого каталога), и эта функция выполняет простую работу по преобразованию единиц измерения, например, из метра в футы. Реализуется ли такая задача? Я могу кодировать на 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 ответ

Решение

Чтобы вызвать его из любой точки вашей системы, ваше приложение должно находиться в каталоге, который является частью переменной 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) и все.

Другие вопросы по тегам