현재 디렉터리에서 파일만 가져오고 다른 파일은 출력하지 않고 .mp4 .mp3 .exe 파일만 출력하고 싶습니다. 그래서 그냥 이렇게 하면 된다고 생각했습니다:
ls | grep \.mp4$ | grep \.mp3$ | grep \.exe$
하지만 첫 번째 grep은 mp4만 출력하므로 다른 두 개의 grep은 사용되지 않습니다.
어떤 아이디어 있으신가요? 추신, 이 스크립트를 Slow Leopard에서 실행 중입니다.
정규 표현식 사용할 수 있는 '찾기':
find . -iregex '.*\.\(mp3\|mp4\|exe\)' -printf '%f\n'
find . -iregex '.*\.\(mp3\|mp4\|exe\)' -printf '%f\0' | xargs -0 dosomething
이렇게 하면 공백이 들어 있는 파일 또는 줄 바꿈.
OS X '찾기' 대체 '- e 옵션을 사용할 때' (고급) 만을 지원합니다.
find -E . -regex '.*\.(mp3|mp4|exe)'
Exe, mp3, mp4}, {사용하는 경우 'ls * 해당 오류를 발생시킬 것', 그 중 한 확장장치 주님으로부터그에게 결과를 얻을 수 있습니다.
. (Mp3 exe mp4) '' ls 사용하여 모든 파일을 반환되므로 일치하는 결과를 , * 0 의 경우에도 확장명은 확장명은 한 바 있다.
'ls boot-r 핀스트 " .mp3"; '
ls - R ',' = > 서브디렉토리가 열거합니다 재귀적으로