방개
비밀번호를 잊어버리셨나요?

질문

파일 용량에 따라 다른 폴더로 이동시키려고 합니다

    • 글자 크기
filegetsize, jpgsize, c:\jpg\*.jpg

if (jpgsize>4999999)

filemove, , c:\jpg\heavy

if (jpgsize<5000000)

filemove,, c:\jpg\light

 

jpg 폴더 안에 있는 모든 jpg 파일의 용량을 측정해서

 

파일 용량이 5백만 바이트 이상이면 heavy 폴더로 옮기고

이하면 light 폴더로 옮기고 싶은데

 

어떻게 해야할지 전혀 감이 안옵니다

 

 

    • 글자 크기
댓글 7
  • 2020.8.25 17:44 댓글

    Loop, Files를 쓰시면 됩니다.

  • 2020.8.25 18:01 댓글첨부 1
    Loop, Files, C:\Program Files\Nemojit\*.*
    {
    	if (A_LoopFileSize >= 5000000) ;A_LoopFileSizeMB > 5로 쓸 수 있겠죠?
    		result .= A_LoopFileName ": 5MB 이상입니다. (" A_LoopFileSize "Bytes)`n"
    	else
    		result .= A_LoopFileName ": 5MB 미만입니다. (" A_LoopFileSize "Bytes)`n"
    }
    MsgBox, % result

    저는 이런 예제를 만들어보았습니다... ^^ 특정 경로의 모든 확장자의 파일 중에서 바이트 수가 5000000 이상일 때는 "이상입니다", 아니면 "이하입니다"를 변수에 담아서 출력하는 예제입니다. 하시고자 하는 작업에선 변수에 값을 담는 작업 대신에 파일을 옮기는 작업을 하시면 되겠네요. (Filemove이용)

     

    https://www.autohotkey.com/docs/commands/LoopFile.htm

    https://www.autohotkey.com/docs/commands/FileMove.htm

     

     

    3.png

     

  • 프날님께
    라이벌글쓴이
    2020.8.26 20:23 댓글

    사랑합니다.

     

    정말정말 감사합니다.

     

    배치파일에서 for 문 쓰는 거랑 비슷하네요

     

    loop files 를 어떻게 쓰는 건지 몰랐는데

     

    이렇게 쓰는 거였네요

     

    정말 감사합니다

  • 프날님께
    라이벌글쓴이
    2020.8.26 20:43 댓글

    loop, files, c:\jpg\*.jpg

    {

    if (A_LoopFileSize >= 5000000)

    filemove, c:\jpg\A_LoopFileName, c:\jpg\heavy

    else

    filemove, c:\jpg\A_loopFileName, c:\jpg\light

    }

     

    이렇게 만들어봤는데 이상하게 작동이 안됩니다.

     

    뭐가 잘못된 걸까요..

     

    경로도 지우고 내부 변수만 써서도 해보고 그래도 안되네요

  • 라이벌님께
    2020.8.26 21:12 댓글

    코드스니펫 기능을 이용하시면 깔끔하게 코드를 붙여넣으실 수 있습니다.. ^^

     

    FileMove의 사용법이 잘못되었습니다. "정확한 경로명"전체를 넣어주셔야합니다. 쓰신 구문에는 우선 A_LoopFileName은 변수니까 %표시를 해주어야하며, 목적지 폴더에도 파일 이름을 명기해줘야합니다. (파일을 옮기면서 이름이 바뀔지 또한 FileMove로 결정하기 때문입니다.)

  • 2020.8.26 21:18 댓글

    추가) 파일명 변경 없이 폴더를 옮길 경우, 제가 말한대로 동일한 파일명으로 명기해주거나, 폴더 경로 끝에 \를 써주어서 폴더임을 명시해주어야합니다. (쓰신 예제에선 light, height대신 경로에 light\, heavy\처럼요)

  • 프날님께
    라이벌글쓴이
    2020.8.26 21:30 댓글

    엇 방금 해결했는데 벌써 댓글 달아주셨네요

    변수 %표시를 안해서 생긴문제였습니다

     

    정말정말 감사합니다

댓글 달기

서버에 요청 중입니다. 잠시만 기다려 주십시오...