최근에 git 저장소에서 Light Table을 다운로드하여 Light Table을 설치 했으며이 웹 사이트 의 지침에 따라 데스크탑 런처를 만들었습니다.
이제 터미널에 직접 입력하여 프로그램을 실행하고 싶습니다
LightTable
그리고 아닙니다
./opt/LightTable/deploy/LightTable
최근에 git 저장소에서 Light Table을 다운로드하여 Light Table을 설치 했으며이 웹 사이트 의 지침에 따라 데스크탑 런처를 만들었습니다.
이제 터미널에 직접 입력하여 프로그램을 실행하고 싶습니다
LightTable
그리고 아닙니다
./opt/LightTable/deploy/LightTable
답변:
이것은 기본적인 질문이 아니며, 가장 좋은 방법은 별명을 만드는 것입니다. 예제로 netbeans를 사용하겠습니다.
터미널 열기 Ctrl+Alt+T
nano ~/.bashrc
파일 맨 아래에 이것을 작성하십시오.
alias netbeans='/home/john/netbeans-7.0.1/bin/netbeans'
Ctrl + x
Y
Enter
netbeans 단어는 프로그램을 시작하는 데 사용할 명령이며 필요한 것으로 변경할 수 있습니다. 따옴표 안에는 netbeans 별칭이 호출 될 때 실행하려는 명령이 있습니다.
이 명령을 활성화하려면 터미널을 다시 열어야합니다
실행 파일 /usr/bin
이 간단한 실행 프로그램이고 다른 파일에 의존하지 않는 경우 실행 파일을 복사 할 수 있습니다 . 다른 파일에 의존하는 경우 가장 좋은 방법은 프로그램에 대한 바로 가기 명령을 만드는 것입니다.
별명을 작성하는 위치는 사용자가 직접 작성하는 것입니다 (.bashrc, .profile 등). 그러나 개인적으로 파일 에 모든 환경 변수 를 허용 .bash_aliases
했습니다 (처음에 변수 를 만들어야합니다).
HOME 폴더에 .bash_aliases 파일을 작성하고 원하는대로 편집하십시오. 그런 다음 바로 가기를 만들려면 다음을 수행하십시오.
alias LightTable='path_to_opt/LightTable/deploy/LightTable'
파일을 저장하면됩니다.
추신 : L을 대문자로 잊어 버렸거나 실수로 Capslock이 활성화 된 경우 별칭을 lighttable 및 LIGHTTABLE로 지정할 수 있으므로 명령을 다시 입력 할 필요가 없습니다.
/usr/local/bin
대신 Apt를 통해 설치되지 않은 것을 넣는 것이 좋습니다 . 물건은 /usr/bin
Apt 패키지로 지우거나 바꿀 수 있지만 물건 /usr/local/bin
은 혼자 남겨 둡니다.
다른 응답자가 이것을 제안하지 않은 이유는 확실하지 않지만 OP가 실제로 지적한 것처럼 $PATH
변수 앞에 추가 하면 내가 달성 한 방법 일 것입니다.
echo 'PATH=/opt/LightTable/deploy:$PATH' >> ~/.bash_profile
source ~/.bash_profile
그런 다음 다음을 실행하십시오.
LightTable
LightTable
을 지정 lighttable
합니다 echo 'alias LightTable=lighttable' >> ~/.bash_alias && source ~/.bash_alias
.
내가 생각하는 별칭보다 심볼릭 링크를 만드는 것이 좋습니다. 별명 은 원하지 않는 경우 명령 행을 대체 할 수 있습니다. 심볼릭 링크를 만들면 원하는대로 프로그램을 실행할 수 있습니다.
sudo ln -s full_path_to_opt/LightTable/deploy/LightTable /usr/local/bin
그러면 / usr / local / bin에 (PATH에 이미 있어야합니다!) LightTable이 실제로있는 바로 가기가 만들어집니다. "LightTable"의 대문자가 마음에 들지 않으면 심볼릭 링크의 이름을 바꿀 수도 있습니다.
sudo ln -s full_path_to_opt/LightTable/deploy/LightTable /usr/local/bin/lighttable
참고로, 프로그램이 어색하게 설계된 경우, 즉 구성 파일이나 라이브러리를 찾지 못하는 것에 대해 불평하는 경우 더 유용한 다른 솔루션은 래퍼 스크립트를 만드는 것입니다. 이렇게하려면 "LightTable"(또는 원하는 다른 파일)이라는 파일 (당시 원하는 곳)을 작성하십시오.
#!/bin/sh
# Simple script to run LightTable
if ! cd full_path_to_opt/LightTable/deploy/LightTable ; then
echo "$0: error: LightTable directory not found." >&2
exit 1
fi
exec ./LightTable
이 파일의 권한을 변경하십시오.
chmod 755 <wrapper_script>
작동하는지 확인하고 실행되면 / usr / local / bin으로 이동하십시오.
sudo mv -i <wrapper_script> /usr/local/bin
우분투에서 시작할 때 이것을 시도했습니다. 터미널에 LightTable을 넣으면 $PATH
디렉토리 에서 LightTable이라는 파일을 검색합니다 . echo $PATH
디렉토리를 얻을 수 있습니다 .
에서 LightTable 프로그램을 실행하려면 ./opt/LightTable/deploy/LightTable
Light Table 파일을에 배치해야 /usr/games or /usr/bin.
하지만 Super User 권한이 필요합니다.
Ctrl + Alt + T로 터미널을여십시오
그런 다음 넣어
다음을 사용하여 LightTable의 바로 가기를 만드는 것을 선호합니다
sudo ln -s path/to/LightTable /usr/games/LightTable
그런 다음 SU 비밀번호를 입력하십시오. 그런 다음 LightTable
터미널에서 를 사용하여 프로그램에 액세스 할 수 있습니다
당신은 /usr/bin
또는 /usr/local/bin
대신에 /usr/games
, 무엇이든 넣을 수 있습니다$PATH
디렉토리 있지만 그렇게 할 필요는 없지만 것이 좋습니다/usr/local/bin
또한 lightpath
대신 출력 파일을 변경하는 것이 좋습니다.LightPath
PATH
변수를 환경 변수에 추가하는 것이 종종 이것을 달성하는 가장 좋은 방법은 아니며 때로는 시스템을 손상 시키거나 보안 취약점을 일으킬 수도 있습니다. ( 여기 에서 명령으로 변환 될 다른 실행 파일과 추가 된 위치를 고려해야합니다PATH
.) 여기에 답변이있는 쉘 별명을 추가하는 것이 그러한 복잡성을 고려하지 않는 사람에게는 더 좋습니다. 또한 해당 특정 앱에보다 좁게 맞춰져 있습니다. 따라서 이것은 조금 중복되지만 질문의 사본 이 아닙니다 .