dirs
: 디렉토리 스택 출력pushd
, popd
로 제어한 stackdirs -l
dirs -v
: 레벨 보여줌dirs +N/-N
dirs
에서 +N
일 경우 왼쪽부터 0번으로 시작하는 idx
$ dirs -l -v
0 /home/dhyang/workspace/scripts
1 /home/dhyang/workspace/scripts/rsync
$ dirs -l +0
/home/dhyang/workspace/scripts
pushd
$ pushd [LOCATION]
$ pushd
명령을 내리면 현재 위치가 디렉토리 스택에 push!! 후 디렉토리 스택 출력$ pushd ~/snap
: 디렉토리 스택에 ~/snap을 push$0
과 사용 시$ pushd > /dev/null
$ pushd `dirname pwd -P` > /dev/null
/dev/null
로 버리자popd
$ popd [LOCATION]
$ popd
명령을 내리면 디렉토리 스택 젤 위 내용 pop!하고 디렉토리 스택 출력$HOME/workspace/scripts/rsync/rsync_script.sh
======== rsync_script.sh ========
#!/bin/bash
pushd `dirname $0` > /dev/null
WORKING_DIR=`dirs -l +0`
popd > /dev/null
echo $WORKING_DIR
=================================
$ ./rsync_script.sh
/home/dhyang/workspace/scripts/rsync
basename $X
dirname $X
$X
로 준 path의 dirname 까지의 path를 출력dirname $X
의 결과는 아규먼트의 부모 디렉토리를 표준 출력한다.pwd
$ pwd = $ echo $PWD
pwd -P
pwd -P
옵션은 절대경로(그런데 디폴트로 절대 경로인 듯?)