Programming

Shell script 현재 path 변수로 저장하기 / Script 실행결과 변수로 저장하기

인포개더러 2013. 6. 28. 11:35



Shell script 현재 path 변수로 저장하기 / Script 실행결과 변수로 저장하기


Shell script 를 사용하다 보면 현재 경로를 저장하여 사용해야할 경우가 종종 발생합니다.

이때 현재 경로를 표시하는 방법은 $ pwd 라는 명령어인데 이를 변수에 저장하여 사용하면 됩니다.



저장 방법은 아래와 같이 shell command 를 () 괄호로 싸서 넣는 것 입니다.


path_save.sh

PATH_NAME=$(pwd)

echo $PATH_NAME


실행 결과는 아래와 같습니다.


$ path_save.sh

/home/tester/current_path/


다른 예로 현재 폴더 size 를 변수에 넣을 수도 있습니다.


path_save.sh

PATH_NAME=$(ls)

echo $PATH_NAME


$ path_save.sh

file1 file2 file3 file3



실행 되어야 할 파일이 있는 경로가 필요하다면 아래와 같은 방법으로 저장이 가능합니다.


path_save.sh

BASE_NAME='basename "$EXEC_FILE"'

PATH_NAME=`echo "$EXEC_FILE" | sed 's/'"${BASE_NAME}"'$//'`

cd "$PATH_NAME"                 > /dev/null 2>&1

FULL_PATH=$(pwd)


basename : 실행파일의 경로를 제외한 파일명만 저장하는 명령어

sed : stream editor

| : pipe 명령어 (왼쪽의 실행 결과를 오른쪽으로 전달)

> /dev/null 2>&1 : standard output 결과 보이지 않게 하는 방법


이상으로 Shell script 현재 path 변수로 저장하기 / Script 실행결과 변수로 저장하기에 대하여 알아 보았습니다.