Midnight Commander를 시작할 때 소스 bash 스크립트

Midnight Commander를 시작할 때 소스 bash 스크립트

명령을 실행할 때 bash 스크립트를 얻을 수 있는 방법이 있습니까 mc? 나는 이것을 Midnight Commander의 bash 인스턴스에서 파생시키고 싶습니다. 나는 이런 것을 시도했다

mc && . .bash_script.sh 

하지만 작동하지 않습니다. Bash는 이전 Bash 인스턴스에서 스크립트를 가져온 것 같습니다. 명령을 실행한 후에 스크립트 가 가져온 것으로 exit나타났기 때문입니다. .bash_script.sh하지만 정오 명령줄에서는 사용할 수 없습니다.

답변1

man mc, 찾다"bashrc” 키워드:

Bash를 사용하는 경우 ~/.local/share/mc/에서 서브셸에 대한 시작 명령을 지정할 수 있습니다.bashrc~/.local/share/mc/inputrc 파일의 파일 및 특수 키맵. tcsh 사용자는 ~/.local/share/mc/tcshrc 파일에서 시작 명령을 지정할 수 있습니다.

따라서 ~/.bash_script.sh이것이 귀하의 경로라고 가정하고 다음 내용이 포함된 파일을 .bash_script.sh추가하십시오 .~/.local/share/mc/bashrc

[xiaobai@localhost tmp]$ cat ~/.local/share/mc/bashrc
. ~/.bash_script.sh
[xiaobai@localhost tmp]$ 

mc(또는 )을 실행 하면 mc -U하단 명령 프롬프트가 현재 시간으로 변경됩니다.

Ctrl그런 다음 -를 눌러 o서브셸에 들어가면 회색 +git 정보는 여기에서 첫 번째 명령을 실행한 후에만 적용됩니다(버그). Ctrl-를 다시 누르면 홈 화면 o으로 돌아갑니다 .mc

답변2

mc달리다 ~/.bashrc. 따라서 우리는 .bash_script.sh내부에서 스크립트 소스를 실행할 수 있습니다 ~/.bashrc. 내부적으로만 스크립트 소스를 얻으려는 것 같습니다 mc. 이 경우 설정된 쉘 변수를 테스트하십시오 mc(예: ) MC_SID.

~/.bashrc따라서 다음 줄을 추가한 후 :

[ "$MC_SID" ] && . .bash_script.sh 

시험

이 방법이 작동하는지 확인하려면 간단한 것부터 시작하십시오. 다음 줄을 입력하세요 ~/.bashrc.

[ "$MC_SID" ] && date >>~/mc.log

다음으로 인스턴스를 시작합니다 mc. 그런 다음 실행하여 ls ~/mc.log파일이 존재하는지 확인하십시오.

관련 정보