제목이 말하는 것과 정확히 일치하는 프로그램을 만들어야합니다. 내 프로그램이 모든 현재 파일과 모든 하위 디렉토리를 검색하여 패턴과 일치하는 파일이 있는지 확인해야합니다. 파일과 패턴이 일치하면 파일의 전체 경로 이름을 화면에 인쇄해야합니다.sys.argv와 함께 하나의 정규 표현식을 허용하는 파일 검색 프로그램을 만듭니다.
나는 수업 시간에 나에게 주어진 예제에서 일부를 복사하여 붙여 때문에 그러나 어떤 부분이 이해가되지 않을 수 완성이 몇 가지 있습니다
#!/usr/bin/env python
import re, glob, sys, os
if (len(sys.argv) < 2):
print("You need an argument.")
sys.exit(0)
var = sys.argv(1)
#re.search(var,
data = os.walk(".")
for tup in data:
dirname = tup[0]
dirlist = tup[1]
dirlist = tup[2]
for file in filelist:
fullname = os.path.join(dirname, file)
username = owner(fullname)
if re.data:
print(os.path.abspath(os.path.join(username, fullname)))
기본적으로, 리눅스 I에서 프로그램을 실행할 때 프로그램의 이름을 입력 한 후 바로 인수를 입력해야합니다. 이 인수는 검색하려는 파일의 이름입니다. 따라서 "./lab7.py .txt"라고 입력하면 프로그램에서 .txt 파일을 반환해야합니다. 나는 아직 초보자이며 대답은 여러분 중 일부에게는 꽤 분명해 보일지 모르겠지만이 프로그램을 실행하는 데 필요한 최종 단계를 얻지 못하는 것 같습니다. 도움이된다면 고맙습니다.
'찾을 수 있습니다. | grep 'txt'' – jmunsch