ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 함수의 정의
    Technique/LPIC 2019. 10. 20. 13:54
    반응형

    bash의 기본 커맨드에 있는 function 커맨드를 사용하면 bash 쉘 상의 이용 가능한 독자적인 함수를 정의할 수 있다.

    빈번히 이요하는 커맨드의 조합을 지정해둔다면 편리하게 이용가능하다.

     

    function 함수명() { 커맨드; }

     

    [{]의 뒤부터 [}]의 앞에는 공백이 필요하므로 주의해야 한다.

    아래의 예는 심볼릭 파일만 리스트를 표시하는 lslink 함수를 정의하고 있다.

     

    function lslink() { ls -l | grep '^l'; }

     

    인수 또한 사용할 수 있으므로 조금 더 편리하게 사용 가능하다. 첫 번째 인수는 $1로 나타낸다. 아래의 예에는 지정한 디렉터리 안에서만 링크 파일의 리스트를 출력하도록 하는 함수를 정의한다.

     

    function lslink() { ls -l $1 | grep '^l'; }

     

    함수를 실행하기 위해서는 커맨드를 실행하는 것과 같이 함수명을 입력한다. 함수가 이용 가능한 것은 그 함수를 정의한 쉘 내에서 만 가능하다. set 커맨드를 사용하면 정의되어 있는 함수가 변수 리스트에 뒤이어 리스트로 표기된다 여기서도 알 수 있듯이, bash에는 변수명과 함수명을 구별하지 않기 때문에, 이름이 중복되지 않도록 주의할 필요가 있다. 정의되어 있는 함수만 표시하기 위해서는 declare -f 커맨드를 사용한다.

     

    함수 정의를 삭제하기 위해서는 변수를 삭제하는 것과 마찬가지로 unset 커맨드를 사용한다.

    반응형

    'Technique > LPIC' 카테고리의 다른 글

    쉘 스크립트  (0) 2019.10.20
    bash의 설정 파일  (0) 2019.10.20
      (0) 2019.10.14
    환경변수와 쉘 변수  (0) 2019.10.14
    파일의 검색  (0) 2019.08.15

    댓글

Designed by Tistory.