.profile과 같은 파일도 쉘 스크립트가 아닌 Python이 되도록 시스템에서 bash를 IPython으로 바꾸고 싶습니다.
이 문제에 대해 몇 가지 질문을 받았음에도 불구하고 저는 이 주제에 대해 여전히 약간 혼란스럽습니다. 이전에 제가 물어본 질문은 다음과 같습니다.
1)Bash를 Python으로 바꾸는 방법은 무엇입니까?
이 질문에 대한 답변을 통해 bash를 IPython으로 자동 교체하는 방법을 배웠습니다.뒤쪽에로그인하십시오(여전히 쉘 스크립트에 작성된 .profile을 사용함).
2).profile은 쉘 스크립트로 작성됩니다. Python 스크립트를 실행하고 싶다는 사실을 시스템에 알릴 수 있습니까?
이 질문에 대한 대답을 통해 나는 .profile 파일이 "실행"되기보다는 "소스화"된다는 것을 알게 되었습니다. 즉, .profile의 행은 마치 쉘에 입력된 것처럼 하나씩 실행됩니다.
이제 내 질문은 다음과 같습니다.IPython 매직/Python을 사용하여 .profile 파일을 얻을 수 있도록 기본 시스템 쉘 IPython을 어떻게 만드나요?예를 들어, IPython Magics/Python을 사용하여 .profile 파일을 작성하고 싶습니다.
답변1
Python을 셸 언어 및 명령 프롬프트로 사용하는 데 관심이 있다면 다음을 살펴봐야 합니다.젠시. Python으로 스크립트를 작성할 수 있는 Python 기반 셸입니다.
답변2
프로세스가 Python을 기본 셸로 시작하도록 하려면 다음을 login(1)
사용하여 파일에서 셸을 변경할 수 있습니다./etc/passwd
usermod -s /usr/bin/python yourusername
스크립트 .profile
는 여전히 실행되지 않습니다. 파일 이름/위치는 bash(1)
. 그런 다음 슬레이브 스크립트를 사용하여 대화형 모드로 들어갈 수 있습니다 code.interact()
.
그러나 이것은 별로 잘 작동하지 않을 것입니다(전혀 있더라도). Python의 대화형 모드는 셸의 기능 대부분(예: 작업 제어)을 수행할 수 없으며 os.system
시스템 셸이 이제 Python이기 때문에 도움이 되지 않습니다.