명령을 실행할 때 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
파일이 존재하는지 확인하십시오.