환경 변수 _

환경 변수 _

명령줄에서 printenv 명령을 보냈는데 변수 중 하나가 다음과 같습니다.

_=/usr/bin/printenv

나는 이제 이렇게 합니다:

mo@mo-Toshiba ~/Workspace $ printenv _
/usr/bin/printenv

하지만 이 변수에 대해 echo를 호출하려고 하면 다음과 같은 결과가 나타납니다.

mo@mo-Toshiba ~/Workspace $ echo $_
_

무엇을 제공합니까? 에코가 이것을 변수로 처리하지 않는 이유는 무엇입니까? (예: $PATH 또는 $PWD)

답변1

변수입니다. 그만큼쉘 변수_이전 명령의 마지막 인수를 포함하도록 명령을 실행할 때마다 셸에 의해 업데이트됩니다.

자주 유용하지는 않지만 "마지막 명령과 동일한 파일(또는 다른 개체)"에서 작업을 수행하는 별칭이나 함수를 작성할 수 있습니다.

변수는 하위 프로세스 환경에도 추가됩니다. 거기에는 (조회 전) 쉘에 전달된 명령의 이름이 포함되어 있습니다 PATH.

관련 정보