참고:질문 내용은 본질적으로 동일하지만이 링크에 문제가 있습니다, 제공된 답변이 그다지 만족스럽지 않았기 때문에 "문제 해결"로 표시하지 않았습니다. 아래에서 내가 수락한 답변은 더 깨끗하고 간단합니다. 구경하다!
bash
다음과 같이 실행할 사용자 정의 명령을 전달하는 방법을 알고 있습니다 .
bash -c "/bin/echo hello"
이렇게 하면 bash
실행 매개변수가 -c
종료됩니다. 작업이 완료되었을 때 대화형 프롬프트를 표시하려면 어떻게 해야 합니까? 추가해도 -i
효과가 없습니다. .bashrc
항상 읽는 파일에 사용자 정의 명령을 작성하고 싶지 않습니다 .
나는 그렇게 해왔 bash -c "commands; exec bash -i"
지만 두 번 부팅되기 때문에 이상적이지 않습니다 bash
. bash
단 한 번의 실행으로 동일한 효과를 얻을 수 있는 방법이 있습니까 ?
답변1
--init-file
이와 같은 옵션을 사용할 수 있습니다 bash --init-file <(echo "echo hello")
. 이것은 .bashrc
파일을 전혀 소싱하지 않습니다. 소스 파일을 원하면 .bashrc
다음과 같이 추가할 수 있습니다 bash --init-file <(echo ". ~/.bashrc; echo hello")
. 또는 실행하려는 모든 명령을 파일에 넣고 사용할 수 있습니다.bash --init-file file_with_commands