특정 디렉토리에서 .jpg 및 .mp3를 찾아서 다른 디렉토리로 옮기려고 했지만 그것이 올바른 명령이라고 확신하지만 작동하지 않습니다.
$ find -iname *.jpg *mp3 -exec mv {} /Directory2 \;
답변1
find
실수로 현재 디렉토리의 파일과 일치하는 것을 방지하려면 표현식에서 glob 패턴을 인용해야 합니다 .
또한 -iname
하나의 인수만 사용합니다. 대체 패턴을 일치시키려는 경우 -iname '*.jpg' -o -iname '*.mp3'
등을 사용할 수 있습니다.
그래서 (연산자 우선순위 참고)
find . \( -iname '*.jpg' -o -iname '*.mp3' \) -exec mv {} path/to/Directory2/ \;
또는 Linux를 사용하고 있으므로 GNU -t
양식 mv
과 다중 파일 자리 표시자를 사용하세요.{} +
find . \( -iname '*.jpg' -o -iname '*.mp3' \) -exec mv -t path/to/Directory2/ {} +