이전 버전의 버전이 루트에 저장되어있는 정적 웹 사이트가 있습니다. 이 페이지를 찾아서 루트 파일의 일부 링크에서 사용되는지 확인하고 싶습니다.
그래서 나는 파워 쉘의 명령 ls -R -Name
을 사용하여 파일 'Filelist.txt의'에 저장할 루트 내부의 모든 파일의 목록을 만들어 지금은 같은 있습니다파일이 html 페이지의 링크로 사용되는 위치를 어떻게 찾을 수 있습니까?
directory1
directory2
5s.htm
5s.html
5s_introduction.htm
...
images\icons
images\icons\linkedin.png
images\icons\project-slider-arrow-left.png
images\icons\project-slider-arrow-right.png
내가 지금 어디에이를보고 싶지을 파일이 사용 되었기 때문에 파이썬에서 간단한 스크립트를 사용할 수 있다고 생각했다. (필자는 윈도우의 파워 쉘을 모른다.) 목록에서 한 줄을 가져 와서 루트 내부의 각 HTML 페이지에서 occurences를 찾는다.
내가 다음 ++ 메모장에이 정규식 시도 파일 이름 만 추출하려면 :
[^\\^\n]+\.[a-z]{0,4}
을하고 일을 보였다을 ...
두 번째 단계 (^ \ n이 모든 디렉토리를 대표하는 라인을 제외하는 것입니다), I 시도
import re
with open('filelist.txt') as f:
for l in f:
m = re.match('([^\\^\n]+\.[a-z]{0,4})', l)
if m:
print(m.group(1))
을하지만, 정규식이 잘못된 경우처럼 그것은 나에게 완전히 잘못 문자열, 공백이나 단일 문자의 전체를 반환 내가 유래에 발견이 파이썬 라인을 적용합니다. 그런 다음 변수로 정규 표현식 결과를 사용하고 루트 디렉토리의 각 HTML 페이지에서 어떻게 든 검사 할 수 있다고 생각했지만 여기에 붙어 있습니다.
그것은 작동하지 않습니다 ... 그것은 나에게 파일 확장자의 마지막 문자를 인쇄 –