unix c중에서 alias 내용을 알려면 어떻게 해야하죠?

jee89의 이미지

unix 프로그램에서
특정 alias 내용을 알수있는 방법이 있나요?

doraq의 이미지

환경을 명시하셔야 답이 달리겠는데요.
1. 어떤언어로 하시는 프로그램인지.
2. perl등의 script가 아니라면, alias 라는게 한 이름을 다른이름으로 대치하는걸 포괄적으로 표현한 건지(즉 C의 #define 같은걸 의미하는지)

shell 명령어를 alias 한거라면 shell command line에서 alias 라고하면
alias된게 출력될거구요.

C언어 프로그램에서 어떤 변수/함수/.. 의 원형을 빨리 보고싶으신거라면
VI + ctags 를 추천.

jee89의 이미지

unix c에서 alias를 실행하고 싶은데요.
그게 불가능할것같으면,
alias 내용을 보려고요...

운형의 이미지

alias가 환경변수에 저정되는 걸루 알고 있는데요..
환경변수를 뒤지시면 나오지 않을 까요. getenv........... setenv.....

휙휙

Do you think that's the air you are breathing now?

jee89의 이미지

getenv( "alias name " ) 했는데 null string 나옵니다.^^

최종호의 이미지

구현에 따라 다르겠지만 alias는 보통 쉘상에서 built-in 명령어로 작성됩니다.
환경변수로는 저장이 안되기 때문에 현재쉘에서만 의미를 가집니다.

프로그램에서 alias를 알고 싶으면 popen("alias", "r")을 수행해서
출력결과를 파싱해서 사용하면 되지않을까요?

#include <stdio.h>
#include <errno.h>

main(int argc, char **argv, char **envp)
{
        char    buf[256];
        FILE    *fp;

        fp = popen("alias", "r");
        if (fp == NULL) {
                perror("popen");
                exit(2);
        }

        while (fgets(buf, sizeof(buf), fp)) {
                printf("%s", buf);
        }

        pclose(fp);

        exit(0);
}
운형의 이미지

헉.. 지금확인해보니.. alias 그렇군요.. -_-

유언비어 유포해버렸네요. -_-

jee89님께 미안하게됬군요. (__)

Do you think that's the air you are breathing now?