지정된 경로의 일부가 있는 파일을 찾는 방법은 무엇입니까?

지정된 경로의 일부가 있는 파일을 찾는 방법은 무엇입니까?

내 백업(Apple Time Machine)에서 모든 파일을 찾으려고 합니다 .txt..csv

백업 디렉터리의 구조는 다음과 같습니다.

/machine name/date/Macintosh HD/ 

여기에는 그날 내 컴퓨터에 있던 모든 파일이 포함되어 있습니다. 백업 드라이브에는 지난 3년 동안 여러 컴퓨터의 콘텐츠가 포함되어 있기 때문에 이러한 디렉터리가 많이 있습니다.

나는 찾는 데 관심이 있다내 거텍스트 및 CSV 파일(예: 파일):

/mac1/2014-08-31-173253/매킨토시 HD/사용자/나/파일/작업/파일 1.txt

.txt따라서 경로 어딘가에 있는 모든 파일을 찾아야 합니다./사용자/나

답변1

find가능한 경우 다음을 사용할 수 있습니다.

$ find "/mac1/2014-08-31-173253/Macintosh HD" -wholename "*/Users/me/*.txt" -or -wholename "*/Users/me/*.csv"

/mac1/2014-08-31-173253/Macintosh HD그러면 경로에 패턴이 포함된 파일이 검색됩니다 .*/Users/me/*.(txt|csv)

답변2

아마도 다음과 같이 할 수 있을 것입니다:

set --
for d in /mac[123]/201[1-4]*'/Macintosh HD/Users/me/Documents/work/'
do  for g in .txt .csv
do  set -- "$d"*"$g"
    [ -e "$1" ] || shift
done

이렇게 하면 모든 파일 이름의 배열을 얻을 수 있지만 "$@"전역 디렉토리 비트가 필요합니다. 이것이 /mac[123]/바로 그 디렉토리의 이름을 추측하는 것뿐입니다.

관련 정보