패턴을 찾아 이동

패턴을 찾아 이동

패턴을 찾아 다른 위치로 옮기는 방법을 아는 사람이 있는지 궁금합니다.

예를 들어 다음과 같은 이름의 파일이 많이 있습니다.

odbc.ini_20110630
odbc.ini_20110639
odbc.ini_20110643
etc...

odbc.ini그냥 패턴을 검색 해서 다 다른 폴더로 옮기고 싶어요 .

나는 한 번에 두 개의 명령을 실행하는 방법(파이핑)에 익숙하지 않습니다.

답변1

당신이 사용할 수있는

find . -name "odbc.ini*" -exec mv {} destination \;

이는 파일이 현재 디렉토리에서 시작하는 디렉토리 계층 구조에 있다고 가정합니다 ..

답변2

파일이 모두 단일 디렉토리에 있고 재귀가 필요하지 않은 경우:

shopt -s nullglob
mv odbc.ini* /new/directory/

재귀가 필요한 경우 :

find "${dir:-.}" -type f -name 'odbc.ini*' -exec mv {} /new/directory \;

또 다른 접근 방식이 있을 수 있지만 extglob독자를 위한 연습으로 남겨 두겠습니다 =]

답변3

모든 파일이 동일한 디렉터리에 있는 경우:

mv /path/to/source/odbc.ini* /path/to/destination

하위 디렉터리의 파일도 이동하려면 다음을 수행하세요.

shopt -s globstar      # put this line in your ~/.bashrc
mv /path/to/source/**/obdc.ini* /path/to/destination

관련 정보