CentOS 7에서 정규식이 작동하지 않는 찾기

CentOS 7에서 정규식이 작동하지 않는 찾기

찾기 및 정규 표현식에 문제가 있습니다. /etc에서 이름이 a 또는 b로 시작되는 파일을 찾고 싶습니다. 나는 다음 명령을 시도했습니다.

find /etc -type f -regex '^a'
find /etc -regextype sed -regex "^a"
find /etc -regextype egrep -regex '^a'
find /etc -regextype posix-egrep -regex '^a'

하지만 작동하지 않습니다. /etc에 a로 시작하는 이름의 파일이 20개 있지만 정규식에서 이 파일을 찾을 수 없습니다. 내가 뭘 잘못한 거지?

감사합니다 파웰

답변1

-regex파일 이름만이 아닌 전체 경로와 일치합니다.

내가 생각 해낸 가장 가까운 것은 다음과 같습니다.

find /etc -type f  -regex '.+/[ab][^/]+'

이는 a /, aor b, 그 다음에 다른 것이 아닌 모든 항목과 일치합니다 /.

답변2

이전에는 다음과 같이 매우 간단했습니다.

find /etc -type f -name 'a*'

관련 정보