현재 디렉토리에서 스크립트를 실행할 때“./”를 생략하는 방법


10

인터넷을 통한 일부 자습서에서는 다음을 수행하지 않고도 현재 디렉토리에서 스크립트를 실행할 수 있습니다.

./script

이것을 어떻게 생략합니까? CentOS 5.6 x64를 사용하고 있습니다. 이런 식으로 실행하고 싶습니다

script


3
이것은 특히 루트 사용자에게는 거의 항상 나쁜 생각입니다.
David Schwartz

1
./ 뒤에 숨겨진 모든 목적 / 이야기는 무엇입니까?
Pete

왜 항상 그것이 필요한지 궁금합니다 ./
Aivan Monceller

마지막 주석은 별도의 질문 IMHO 일 수 있습니다. 일반적으로 프로그램 실행에 대해 이해하는 것이 중요합니다!
rozcietrzewiacz

4
@Pete (및 Aivan) : Linux / UNIX에서 쉘은 프로그램이 지정된 경로를 사용하거나 PATH 변수를 검색하여 경로를 알고있는 경우에만 프로그램을 실행합니다. Windows처럼 현재 디렉토리를 검색한다고 가정하지 않습니다. PATH 변수를 통해 검색하도록 요청한 내용을 정확하게 검색합니다. '.' 현재 디렉토리에 대한 참조입니다. 따라서 './script.sh'를 입력하면 경로를 알려줍니다.
카시우스

답변:


26

중:

  1. 현재 작업 디렉토리를 PATH에 추가하십시오 PATH=${PATH}:.(보안 위험으로 간주 됨).
  2. 스크립트를 포함하는 경로를 PATH 변수에 추가하십시오 (해당 디렉토리에 대한 쓰기 액세스가 제한되어 있으면 보안 위험이 없습니다)
  3. PATH가 이미 (~ / bin, / usr / local / bin, ...)을 가리키는 올바른 위치에 스크립트를 넣으십시오.

마지막 옵션이 가장 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.