셸에서 명령을 실행하고 콘솔에서 명령의 기본 표시를 끕니다.

셸에서 명령을 실행하고 콘솔에서 명령의 기본 표시를 끕니다.

이건 내 스크립트야

cd /opt/product/vinoth
-- some operations --
cd -

이 명령을 실행하면 cd -콘솔에 이전 경로가 표시됩니다.

콘솔에 표시되지 않게 하는 방법이 있습니까?

명령 앞에 @를 사용하면 make 파일에서도 동일한 상황을 피할 수 있습니다.

서핑을 통해 나는 이것이 다음을 사용하여 달성될 수 있다는 것을 배웠습니다.cmd=$(cd -)

명령이 실행되지 않았으며 경로가 변경되지 않았습니다.

답변1

대신 사용하십시오 OLDPWD:

/ $ cd /tmp
/tmp $ echo $OLDPWD
/
/tmp $ cd "$OLDPWD"
/ $

에서 man bash:

   OLDPWD The previous working directory as set by the cd command.
...
cd 
   An argument of - is converted to $OLDPWD before the directory 
   change is attempted.

$(cd -)서브쉘에서 실행되므로 현재 쉘에 영향을 주지 않습니다.

다음과 같이 할 수도 있습니다.

cd - >/dev/null

답변2

설명된 대로이것대답은 이전 작업 디렉토리로 CD를 이동할 때 물결표 확장을 사용할 때 디렉토리를 표시하지 않는 짧은 변형입니다 ~-.

cd ~-

관련 정보