리눅스에서 폴더 내의 모든 파일을 이동하는 명령어

조회수 12896회

aaa라는 폴더가 있을 때 그 내부의 모든 파일(내부의 폴더 안에 있는 파일들까지 전부)을
zzz 폴더로 옮기려고하는데 명령어를 어떻게 쓰면 좋을까요

예를들어서

aaa_dir/a.png
aaa_dir/b.png
aaa_dir/bbb_dir/c.png

이렇게 있을때

zzz_dir/a.png
zzz_dir/b.png
zzz_dir/c.png

이렇게 옮기고 싶습니다.

1 답변

  • 좋아요

    3

    싫어요
    채택 취소하기

    두 개의 디렉토리 구조를 동일시하고자 한다면 cp, mv 명령어를 사용하여 가능합니다.

    근데 위 질문하신 걸 보니 디렉토리 구조를 무시하여 옮기고자 하는 것으로 보이네요. 마지막에 mv 명령어를 제외하고는 모두 find 명령어의 옵션이니 검색해보세요.

    순서대로 명령어를 실행해보면 차이를 아실겁니다.


    • find 명령어를 통해 옮기고자하는 파일들을 검색합니다. (다양한 옵션으로 검색가능)
    find aaa_dir(절대경로 또는 상대경로) -name "*.png"
    
    • 최종 파일명만 추려냅니다.'
    find aaa_dir -name "*.png" -printf "%f\n"
    
    • 하고자하는 명령어 입력
    find aaa_dir -name "*.png" -printf "%f\n" -exec mv {} zzz_dir/ \;
    
    • 와우 이런게 있군녀 편집요청빌런 2017.9.14 11:17
    • 앗 답변 왜 지우셨어요ㅠ 덕분에 제 답이 짧아졌었는데....ㅋㅋ 김선우 2017.9.14 11:22
    • 와 감사합니다. 딱 찾던거에요. ㅠㅠ 덕분에 하나 알아갑니다. hmu332233 2017.9.14 11:44
    • 다시 보니 엉뚱한 답변을 달아서요ㅋㅋ 저도 좋은거 배워갑니다. 편집요청빌런 2017.9.14 16:20

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)