Estabelecendo um conversor de unidade que pode ser chamado globalmente através do terminal

1

Eu gostaria de ter uma função (ou pode ser algum tipo de executável) que pode ser chamada via Terminal de onde eu estiver (de qualquer diretório) e essa função faz um simples trabalho de conversão entre unidades, por exemplo. de metro para pés. Essa tarefa é realizável? Eu posso codificar em Fortran90 e C, o primeiro sendo mais familiarizado com o último. Eu trabalho na plataforma MacOS X.

Por uma questão de simplicidade, digamos que minha função escrita em C pegue uma string e imprima na saída padrão:

#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);       
}

Em seguida, compile-o para gerar um executável chamado "exemplo". Eu gostaria de poder chamar este programa globalmente, para que, executando $example abc , ele imprima input = abc na janela do terminal. Eu tentei colocar este executável no mesmo diretório que o gcc (gfortran, gcc, g + +, etc) desde que este caminho foi definido para a variável de ambiente, mas não funcionou. Não consigo chamá-lo de fora deste diretório.

    
por nougako 12.01.2017 / 15:15

1 resposta

0

Para chamá-lo de qualquer lugar em seu sistema, seu aplicativo deve estar em um diretório que faça parte da variável PATH .

Em questão do terminal:

echo "$PATH"

ou

printf "%s\n" $PATH

e você verá algo assim:

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

Essa é a lista de locais onde o sistema pesquisará o aplicativo.

Mova seu aplicativo compilado para qualquer um desses diretórios: usr/local/bin , por exemplo, ative o bit executável ( chmod + x ) e isso é tudo.

    
por 12.01.2017 / 15:23