쉘 스크립트를 전역으로 만드는 방법은 무엇입니까?
저는 Mac OS 10.6을 사용하고 있으며 쉘 스크립팅에 대해 한두 가지를 배우려고합니다. 셸 스크립트를 저장하고 실행 가능하게 만드는 방법을 이해하고 있지만 파일을 전역으로 만들기 위해 무엇을 할 수 있는지 또는 파일을 어디에 저장할 수 있는지 궁금합니다 (즉, 어떤 폴더에 있든 액세스 할 수 있음).
예를 들어, .sh 파일을 / Users / username / 디렉토리에 저장하고 실행 가능하게 만들면 해당 특정 디렉토리에서만 해당 스크립트를 실행할 수 있습니다. 예를 들어 / Users / username / Downloads로 이동하면 스크립트를 실행할 수 없습니다.
또한 셸 스크립팅에 대해 자세히 알아보기위한 리소스 제안이 도움이 될 것입니다. 감사
/usr/local/bin
가장 적절한 위치입니다. Mac OS X에는 PATH
기본적으로
전통적으로 이러한 스크립트는 ~/bin
(예 : 홈 디렉토리의 bin 디렉토리) 또는 /usr/local/bin/
전자는 스크립트가 사용자에게만 작동 함을 의미하고 후자는 시스템의 모든 사용자가 실행할 수 있도록하려는 스크립트를위한 것입니다.
에 넣으면 ~/bin
PATH 환경 변수에 추가해야 할 수도 있습니다. /usr/local/bin
이미 경로에 있어야합니다.
두 가지 방법이 있습니다.
- 스크립트를 usr / local / bin에 넣고 실행 가능한지 확인하십시오 (chmod + x my_script) (이미 경로에 설정되어 있습니다. echo $ PATH를 수행하여 확인할 수 있습니다)
- 홈 디렉토리에 bin이라는 폴더를 만듭니다. (개인 스크립트 용)
- cd ~ (홈 디렉토리로 이동)
- mkdir bin (bin 폴더 생성)
- vim .bash_profile (경로 환경 변수 설정)
- export PATH = ~ / bin : $ PATH (i를 누른 다음이 줄을 추가 한 다음 esc를 수행하고 : wq를 입력)
- 이제 스크립트 이름을 입력하고 원하는 곳에서 실행할 수 있습니다.
** 참고 : 전체 파일 이름을 입력하는 대신 단축 된 명령으로 스크립트를 실행하려면 .bash_profile에 다음을 추가하십시오.
alias myscript='my_script.sh'
그런 다음 간단히을 입력하여 스크립트를 실행할 수 있습니다 myscript
. (원하는 별명으로 서브 가능)
Mac 운영 체제에서
- bash ~ / .bashrc 파일을 엽니 다.
- export PATH = "$ PATH : /Users/sher.mohammad/Office/practice/practiceShell"을 사용하여 bashrc 파일에 스크립트 경로를 추가합니다 .
- ~. / bash_profile 파일을 열고 [[-s ~ / .bashrc]] && source ~ / .bashrc를 추가하십시오.
- 새 터미널 창 열기 이제 터미널을 열 때마다 스크립트가로드됩니다.
bash 쉘을 사용하는 경우 해당 스크립트를 함수로 작성한 다음 .bashrc에 넣거나 "source file_name"으로 해당 함수를 포함하는 파일을 소싱하십시오.
이제 셸에서 함수 호출로 스크립트를 실행합니다.
bashrc 파일에 익숙하다면 이것은 매우 쉽습니다! 이는 .bashrc 파일 만 사용하고 완료하는 데 2 초가 걸립니다.
(저는 Arch Linux Manjaro를 사용하므로 홈 디렉토리에있는 .bashrc를 사용합니다)
.bashrc 파일에 배치 할 코드 :
# Simple bashrc method to launch anything in terminal from any directory
YOURCOMMAND () {
cd /path/to/directory/containing/your/script/ && ./YOURSCRIPT
}
보시다시피 먼저 간단한 'cd'명령을 사용하고 스크립트 위치의 디렉토리를 지정한 다음 '&&'를 사용하여 바로 다음 명령을 실행하고 마지막으로 스크립트를 열 수 있습니다. 정상적으로! 매우 쉽고 .bash 파일에 바로 저장됩니다! :)
내가 누군가를 도왔기를 바랍니다!
진정으로,
AnonymousX
에 저장 중 하나 /usr/bin
(또는 다른 디렉토리에 존재 PATH
) 또는 편집 PATH
이 기본적으로 어떤 디렉토리에 실행하게됩니다에 저장된 디렉토리를 포함 할 수 있습니다.
'script.sh'의 작업 디렉토리에서 "mv [script.sh] / usr / local / bin"(테스트되지 않았지만 IMO가 가장 덜 복잡한 방식 인 것 같습니다.)
컴퓨터의 전역 실행 가능 디렉토리에 넣어야합니다. 나는 그것이 일반적으로 /usr/bin
Unix 기반 운영 체제에 있다고 생각합니다 (그러나 대부분의 경우 해당 컴퓨터에 대한 슈퍼 사용자 권한이 필요합니다).
$PATH
환경 변수 에있는 다른 디렉토리에 저장할 수도 있지만 해당 변수에 해당 디렉토리가있는 사용자에게만 작동합니다.
쉘 $PATH
에 입력하여 의 값을 찾을 수 있습니다 echo $PATH
. 디렉토리는로 구분됩니다 :
.
참고 URL : https://stackoverflow.com/questions/3560326/how-to-make-a-shell-script-global
'IT TIP' 카테고리의 다른 글
jquery에서 함수를 실행하는 방법 (0) | 2020.11.22 |
---|---|
C #에서 한 번에 여러 루프를 중단하는 방법은 무엇입니까? (0) | 2020.11.22 |
블루투스가 프로그래밍 방식으로 활성화되었는지 확인하는 방법은 무엇입니까? (0) | 2020.11.22 |
내 앱의 Android 알림 설정에 연결하는 방법이 있나요? (0) | 2020.11.22 |
Lodash를 사용하여 값별로 개체 배열 정렬 (0) | 2020.11.22 |