필요한 디렉터리에서 종결자를 실행한 후 필요한 명령을 실행합니다.

필요한 디렉터리에서 종결자를 실행한 후 필요한 명령을 실행합니다.

/home/downloads/예를 들어 특정 디렉터리에서 종결자를 연 다음 명령을 실행하고 싶습니다 .

이 "사용자 정의 명령"을 사용하여 첫 번째 부분을 완료했습니다. cd /home/downloads; bash 이제 터미네이터가 이 디렉터리에서 실행되지만 두 번째 부분을 어떻게 완료할 수 있습니까?

ls이제 다운로드 디렉터리에서 종료자가 시작되었으므로 또는 rake명령이나 일부 별칭을 명령으로 사용하는 등 원하는 명령을 실행하고 싶습니다 . 어떻게 해야 하나요?

종결자를 마우스 오른쪽 버튼으로 클릭하고 "매개변수"를 선택한 다음 "레이아웃"을 선택하고 "사용자 정의 명령" 섹션에 텍스트를 추가했습니다.

이 모든 작업은 터미네이터가 시작된 후 자동으로 실행되어야 합니다.

답변1

cd /home/downloads; exec bash사용자 정의 명령으로 실행합니다. ( exec내장 기능은 bash터미널 에뮬레이터의 자손이 되도록 보장합니다. 내장 기능이 없으면 결국 손자가 될 수 있습니다.) terminator -e 'cd /home/downloads; exec bash'명령줄에서 실행할 수 있습니다.

별칭은 에 의해 정의되므로 사용자 정의 명령에서 별칭을 사용할 수 없습니다 ~/.bashrc. 그러나 파일은 터미널 에뮬레이터와 스크립팅 셸 사이를 연결하는 역할을 하는 스크립팅 셸이 아닌 대화형 셸에 의해서만 로드됩니다. 별칭을 사용하려면 명시적으로 로드해야 합니다. 별도의 파일에 넣으면 이런 모습이 됩니다.

. ~/.bash_aliases; cd /home/downloads; exec bash

아니면 명령줄에서

terminator -x bash -c '. ~/.bash_aliases; cd /home/downloads; exec bash'

별칭이 있는 경우 ~/.bashrc를 사용하세요 . 하지만 쉘이 대화형이 아니기 때문에 . ~/.bashrc별칭에 오류를 일으킬 수 있는 내용이 있을 수 있다는 점에 유의하세요 . .bashrc이런 일이 발생하는 경우 가장 간단한 해결책은 별칭(및 글루 코드에서 사용하려는 기능 및 기타 설정)을 별도의 파일로 분할하고 이를 사용 .하여 .bashrc.

답변2

나는 같은 문제를 가지고있다Terminator를 사용하여 가상 환경 활성화.

비결은 "하나의" 명령으로 모든 작업을 수행하는 것입니다 bash. -i옵션(대화형)을 활용 하고 원하는 대로 설정을 --rcfile통해 사용자 정의를 사용하세요. PROMPT_COMMAND결과는 다음과 같습니다:

command = "bash --rcfile <(cat ${HOME}/.bashrc; echo 'export PROMPT_COMMAND="your commands; go here; unset PROMPT_COMMAND"') -i"

your commands; go here;실제 명령으로 바꾸십시오 .설명은 이 답변을 참조하세요..

답변3

첫 번째 명령을 추가한 것과 같은 방식으로 다른 명령을 추가하면 됩니다. 예를 들어 다음을 실행합니다 ls.

cd /home/downloads; ls; bash

프로필의 "명령" 옵션에 다음을 추가할 수 있습니다.

여기에 이미지 설명을 입력하세요.

얻지 못하는 이유는 rake기본 경로에 있지 않기 때문입니다. 이를 사용하려면 경로를 지정해야 합니다. 따라서 먼저 터미널에서 다음 명령을 실행하십시오.

type rake

그러면 이와 같은 결과가 반환됩니다 /foo/bin/rake.저것필요한 길입니다. 위의 사용자 정의 명령에 다음을 추가합니다.

cd /home/downloads; /foo/bin/rake; bash

별칭에는 작동하지 않습니다. 별칭은 쉘에 의해 설정되며 여기서는 사용할 수 없습니다. 해결책은 스크립트를 사용하는 것입니다. 따라서 다음과 같은 별칭이 있는 경우:

alias foo="command1 argument2"

스크립트를 작성하고 호출한 후 다음 내용으로 foo.sh저장하세요 ./home/youruser/bin

#!/usr/bin/env bash
command1 argument2

실행 가능하게 만듭니다.

chmod a+x /home/username/bin/foo.sh

그런 다음 사용자 정의 명령 섹션에서 다음을 사용하십시오.

cd /home/downloads; /home/username/bin/foo.sh; bash

답변4

열린 터미네이터 창을 마우스 오른쪽 버튼으로 클릭하면 "기본 설정"을 선택할 수 있습니다. "프로필"을 선택한 다음 "명령" 탭을 선택합니다. "내 셸 대신 사용자 지정 명령 실행"이라는 확인란이 있습니다.

나는 이것이 당신이 찾고 있는 것이라고 믿습니다.

관련 정보