나는 Bash 터미널에서 실행중인 Python 프로그램을 작성 중이다. (이미 Bash를 환경으로 사용하고있다.) 거기에는 사용자에게 파일 시스템에있는 디렉토리를 묻는 약간의 설정 루틴이 있습니다. Python Commandline 스크립트 : 사용자 입력시 파일/디렉토리 자동 완성
print "Input:",
input = sys.stdin.readline().strip()
가 지금은 사용자가 기존 파일이나 디렉토리의 이름으로 자신의 입력을 자동으로 완성 할 수 있도록하려면 : 이 내가 입력을 읽는 방법이다. 그렇게하는 가장 좋은 방법은 무엇입니까? 디렉토리/파일을 직접 찾아보고
cmd
(
this example처럼) 패키지를 사용해야합니까? 아니면 더 쉬운 "기본 제공"방법이 있습니까?
os.system과 함께 Bash 자동 완성을 사용할 수 있다면 괜찮을 것입니다. 하지만 지금까지 시도한 모든 것은 성공하지 못했습니다. 이것은 내가 뭘하려 :
os.system("read -e -p \"Input:\" INPUT")
를하지만 이상하다 : 배쉬는 read: 1: Illegal option -e
을 불평 간단한 배쉬 스크립트 내부의 명령이 작동하지만. 하지만 완성을 위해 -e 수정자가 필요합니다.
파이썬 콘솔 프로그램에서 파일/디렉토리 이름 자동 완성을 어떻게 할 수 있습니까?
당신의 예제는 정확히'complete_extra'에서 필요한 것입니다. 또한 Bash에 의존하지 않는 것이 좋습니다 (별로 중요하지 않지만). 이 스크립트를 내 스크립트에 맞게 조정합니다. 감사! – ifischer