폴더 자동으로 여러 개 만들기, 폴더에 맞게 파일 자동으로 넣기

새 블로그의 글로 보기

폴더 자동으로 여러 개 만들기

폴더로 만들어야 할 이름의 목록이 있을 때, 이 이름들이 규칙이 있는 것도 아닐 때, 어떻게 하면 자동으로 만들 수 있을까 고민하신다면 엑셀을 사용해보세요.

파워셸(PowerShell)이나 명령 프롬프트(Command Prompt)에 넣을 폴더 생성 명령어를 엑셀의 셀 복사 기능을 이용해 자동으로 만들 수 있습니다.

자동으로 만들어진 이 명령어들을 복사 후 붙여넣기만 하면 각 셀의 명령이 차례로 수행됩니다.

사진과 함께 설명합니다.

폴더로 만들 이름의 목록을 셀에 넣어주세요.

폴더를 만드는 명령어는 ‘mkdir 폴더이름’ 입니다.

폴더 이름과 mkdir 문자열을 붙이는 방법은 엑셀의 문자열 연결 연산자인 ‘&’를 사용해도 되고, 함수인 CONCATENATE()를 사용해도 됩니다.

문자열 연결 함수를 사용한다면 =CONCATENATE(“mkdir “,A1) 이렇게 하면 됩니다.

여기선 문자열 연결 연산자 ‘&’를 사용합니다.

문자열은 큰따옴표로 감싸야 합니다.

그러니 =”mkdir “&A1 이 되겠지요?

mkdir 뒤에 띄어쓰기가 필요합니다.

명령어와 폴더 이름을 띄어쓰기로 구분하니까요.

이제 오른쪽 아래 네모난 부분을 더블클릭하면(드래그해도 됩니다)

자동으로 만들어집니다.

이제 이것들을 복사 후 파워셸(PowerShell)이나 명령 프롬프트(Command Prompt)에 붙여넣기하면 폴더가 좌르륵 만들어지는데요.

잠깐! 폴더가 만들어질 경로로 이동한 후 붙여넣기를 해야겠죠?

파워셸이나 명령 프롬프트에서 폴더(디렉토리) 이동 명령어인 cd(Change Directory)로 폴더를 만들 곳으로 이동합니다.

cd ‘이동할 경로’ 를 입력하면 됩니다. 탭(TAP)키로 자동완성 기능을 사용합시다.

경로가 길다면 경로도 복사 붙여넣기하면 됩니다.

경로 중 공백이 있다면(폴더 이름에 띄어쓰기가 있다면) 작은따옴표로 감싸줘야 합니다. 주의!

다시 엑셀의 명령어를 복사한 후 붙여넣기를 하고 엔터를 치면

이렇게 만들어집니다.

마우스 우클릭으로도 같은 결과를 얻을 수 있는데요. 조금 차이가 있습니다.

아래에 결과가 있습니다.

폴더가 자동으로 만들어졌습니다.

폴더에 맞게 파일 자동으로 넣기

폴더를 여러 개 만든 이유는 각 폴더에 넣을 파일이 많기 때문이겠죠?

특정 이름을 가진 파일을 특정 폴더에 넣는 방법도 위와 같은 방법으로 한 방에 해결할 수 있습니다.

이번엔 문자열 연결 함수를 사용하는 예만 보여드리겠습니다.

=CONCATENATE(“move *”,A1,”*.jpg “,A1)

이것은 move 명령어로 A1 셀에 있는 문자열이 들어있는 jpg 파일은 A1 셀에 있는 문자열과 같은 이름의 폴더에 넣겠다는 뜻입니다.

위 함수의 결과로 move *2018-01*.jpg 2018-01 명령이 만들어지는 것이죠.

‘*’ 기호는 0개 이상의 문자라는 의미로, 앞뒤로 *을 넣게 되면 사이의 문자열이 포함된 모든 것이 해당됩니다.

뒤에 .jpg같이 확장자를 특정해서 이미지 파일만 선택되게 했습니다.

함수도 역시 띄어쓰기를 조심해야 정상적인 명령어가 만들어집니다.

move 뒤에 띄어쓰기, .jpg 뒤에 띄어쓰기가 있습니다.

명령어와 파일 이름과 폴더 이름을 구분해야 하니까요.

참고로 move 명령으로 이동만이 아니라 파일의 이름을 바꿀 수도 있습니다.

move ‘예전 파일명’ ‘새로운 파일명’ 이렇게 사용하면 됩니다.

위에서는 새로운 파일명 부분에 폴더 이름을 넣었기 때문에 이동이 된 것이고 새로운 이름을 넣으면 이름이 바뀌는 동작을 합니다.

공백이 있다면 역시 작은따옴표가 필요하니 잊지 마세요.

SW Level Up

mail@swlevelup.com

You may also like...

14 Responses

  1. 창현 댓글:

    유용한 정보 감사합니다.

  2. Laonhajae 댓글:

    필요한 정보였는데 감사합니다.

  3. 댓글:

    유용한 정보 너무나 감사합니다!

  4. J 댓글:

    정말 감사합니다.

  5. 김주영 댓글:

    오우~~

  6. 이씨 댓글:

    감사합니다 선생님,,, 위에 파일 생성은 가능하나 아래 배치는 이해가 도무지 안되서 글을 남기게 되었습니다.
    1번 폴더 1,2,3, 이미지 들을 / 2번 폴더에 넣고싶은데. 안되네요..
    조금만 시간을 내서 봐주신다면 제 …일의 연장이 조금이나마 줄어 들것같습니다.

    • SW Level Up 댓글:

      폴더 이름이 ‘1번’ 과 ‘2번’ 이고 같은 폴더에 있다고 가정하고 현재 위치가 이 두 폴더의 상위폴더라면,
      move 1번\1.jpg 2번
      이 명령을 쓰면 1번 폴더의 1.jpg 파일이 2번 폴더로 이동합니다.
      move 명령어 뒤에 이동할 대상의 경로를 쓰고 이동할 폴더의 경로를 넣으면 됩니다.
      따라서 1번 폴더 안의 1.jpg 2.jpg 3.jpg 파일을 2번 폴더로 옮기고 싶고
      파일 이름을 엑셀 시트의 A열에 나열했다고 하면(A 열에 1.jpg 2.jpg 3.jpg 가 있다면)
      =”move 1번\”&A1&” 2번”
      =”move 1번\”&A2&” 2번”
      =”move 1번\”&A3&” 2번”
      이렇게 수식을 만들어서 옮길 수 있습니다.
      참고로 폴더의 경로를 쓸 때 상위 폴더는 점 두개 .. 로 나타냅니다.
      즉 1번 폴더가 2번 폴더 안에 있고 1번 폴더안의 1.jpg 파일을 2번 폴더로 이동하고싶을 때, 현재 1번 폴더에 있다면
      move 1.jpg .. 이렇게 명령을 쓸 수 있습니다.
      실제 어떤 작업이 필요한지 알려주시면 그걸로 예제를 만들어 드릴게요.

      • 익명 댓글:

        C:\Users\Administrator\Desktop\2113\2113 < 이폴더 경로에 이미지가 3장 들어있는데,
        C:\Users\Administrator\Desktop\2113\2114
        C:\Users\Administrator\Desktop\406\406
        C:\Users\Administrator\Desktop\406\407 이경로에 폴더로 옮기고 싶어서요.

        • 익명 댓글:

          2113 폴더에 있는 파일은 406 으로
          2114 폴더에 있는 파일은 407으로 … 하려고 하는데
          위에 예제는 이해가 확오는데 아래는 어렵네요

          • SW Level Up 댓글:

            자려고 누워서 내일 쓸게요 간단히 쓰면
            cd c:\users\administrator\desktop 해서 이동후
            move 2113\2113\* 406\406
            하면 2113의 모든 파일이 406으로 이동하고
            move 2114\2114\* 407\407
            하면 2114의 모든 파일이 407로 이동합니다
            쓰고보니 다 썼네요 ㅎㅎ

  7. 이씨 댓글:

    솔직히… 기다렷어요… ㅋㅋㅋ
    팔목 인대가 늘어나서 이일을 그만둬야 하나 싶었거든요.
    감사합니다. 자려고 했는데 해보고 자야겠아요..
    .광고 … 일주일간 누르러 매일 올게요..

    • 이씨 댓글:

      move “C:\Users\Administrator\Desktop\2113-2193\2113” “C:\Users\Administrator\Desktop\406-486\406”
      여기까지는 이해했는데 … 폴더는 옮겨지는데요.
      move “C:\Users\Administrator\Desktop\2113-2193\2113” *.jpg “C:\Users\Administrator\Desktop\406-486\406”
      jpg 가 OTL….안옮겨지네요 ㅠㅠ

  8. 익명 댓글:

    선생님 드디어 해냈습니다. !!!! 오
    \이걸 하나 빼먹고,,,,,했습니다. 감사합니다.
    다음주 까지 와서 광클!!

  9. 익명 댓글:

    안녕하세요 선생님. 올려주신 내용으로 거즘 반 자동화 까지 완성을 했습니다.
    허나 완전히 자동화를 하고싶어서 추가적으로 문의 드려봅니다.

    AAA\BBB\CCC에 있는 카테고리에서 *aaa*.jpg 파일을 AAA\DDD\EEE로 옮기고 싶습니다.
    상위 카테고리로 올라가는 .. 를 써봐도 어디에선가 계속 에러가 발생하여 결국 파일들을 따로 복사해서 DDD로 넣고 move 명령어 이용해서 분류는 하였지만 조금 더 편해져 보고파 욕심이 납니다.

    좋은 견해 부탁드립니다.

    감사합니다.

댓글 남기기

이메일은 공개되지 않습니다.