shell 파라미터 치환

${ 파라미터 } ${Parameter}는 $Parameter와 같은 표현으로 주로 붙여쓴 경우에 구분을 위해서 사용하는 표기로 알려져 있다. your_id=${USER}-on-${HOSTNAME} echo “$your_id” # echo “Old \$PATH = $PATH” PATH=${PATH}:/opt/bin echo “New \$PATH = $PATH”

shell – expansion

셸 스크립트를 사용하면서, 가장 헷갈리는 부분 중 하나가 문자열 값들이 어떻게 확장되는가 하는 점이다. 여기서는 조금 자세하게 엔터키를 누르는 그 순간에 어떤 ‘마법’이 벌어지는지 보려고한다. 몇 가지 간단한 예제들에서도 이 현상은 우리가 알지 못하는 사이에 쓰고 있는 셈인데, 이를테면 echo 같은 명령에서 이것이 일어난다. 확장 (expansion) 명령을 입력하고 엔터를 누르는 매 순간에 bash는 우리의 명령을 수행하기 이전에 몇 가지 텍스트 관련 처리를 먼저 하게 된다. 이미 echo * 등의 명령에서 어떻게 단순한 글자가 변경되는지를 본 적이 있다. 예를 들어 *는

grep

grep grep은 주어진 파일(들)이나 표준입력에서 주어진 패턴과 매칭되는 라인들을 필터링하여 출력해준다. 기본적으로 grep은 매치되는 라인들을 출력한다. fgrep, egrep도 사용가능한데 이들은 각각 -F, -E 옵션으로 통합되었으며 현재는 오래된 스크립트와의 호환을 위해서만 남겨져 있다고 생각하면 된다.