내용을 유지하면서 하위 폴더를 제거 하시겠습니까?


5

Windows에서는 하위 폴더의 모든 내용을 한 수준 위로 대량으로 이동시키는 방법 (타사 프로그램을 사용하거나 사용하는 방법)이 있습니까? 즉, 선택된 하위 폴더를 제거하면서 내용을 유지하는 방법은 무엇입니까? 나는 가고 싶다 :

Folder
  Subfolder1
    File1
  Subfolder2
    File2

에:

Folder
  File1
  File2

단일 프로세스에서.


답변:


6

명령 프롬프트에서 for 루프를 사용할 수 있습니다.

for /r %i in (*) do @move "%i" .

예, 현재 디렉토리의 파일을 현재 디렉토리로 다시 이동하려고 시도하지만 아무런 해를 끼치 지 않습니다. 파일을 이동하려는 계층의 최상위에있는 동안 실행해야합니다. 다른 위치에서 이것을 실행하면 매우 바람직하지 않은 효과가 있습니다.

특정 디렉토리에 있지 않아도되도록 실행하려면 경로를 입력하십시오.

for /r C:\path %i in (*) do @move "%i" "C:\path"

대신 C:\path모든 파일로 이동합니다 상단 디렉토리의 위치. 배치 스크립트에서 실행하려면 다른 백분율 기호를 포함하도록 변수를 변경하십시오.

for /r C:\path %%i in (*) do @move "%%i" "C:\path"

빈 하위 디렉토리를 모두 제거하려면 (cmd에서) :

for /d %i in (C:\path\*) do @rmdir /s /q "%i"

배치에서 :

for /d %%i in (C:\path\*) do @rmdir /s /q "%%i"

제안한 내용으로 인해 파일이 상당히 손상 될 수 있으므로 게시물을 편집해야한다고 생각했습니다. 첫째, delims=?Windows에서 콘솔 창의 기본 설정은 래스터 글꼴을 사용하므로 레거시 OEM 코드 페이지에 맞지 않는 모든 유니 코드 문자가로 인쇄되기 때문에 사용하는 것은 위험합니다 ?. 그리고 당신은 출력 을 반복했습니다 ... for /f어쨌든 사용 은 잘못된 관용구입니다. for파일, 재귀 또는 디렉토리를 반복적으로 반복 할 수 있으며 래스터 글꼴로도 유니 코드 파일 이름을 올바르게 처리합니다. 600 문자는 주제에 대한 적절한 설명을 위해 짧습니다 :-(
Joey

유니 코드를 잊어 버렸습니다 :( 고마워요.
John T

그건 그렇고, "delims="완벽하게 수용 가능하고 작동합니다. 출력에 없을 가능성이있는 문자를 찾을 필요는 없습니다 :-)
Joey

3

XP에서 간단한 방법은 루트 폴더를 마우스 오른쪽 버튼으로 클릭하고 검색을 선택한 다음 조건을 입력하지 않고 검색을 누르는 것입니다. 검색 결과는 폴더와 하위 폴더에있는 항목의 평평한 목록이됩니다. 그런 다음 검색 결과를 다른 폴더로 드래그하면 모든 파일이 해당 폴더에서 "제거"됩니다.

XP 이후 Windows 버전에서는 탐색기 창의 오른쪽 상단에있는 검색 상자에 검색어를 입력 한 다음 결과를 다른 폴더에 복사하면 동일한 효과를 얻을 수 있습니다.


이 검색 명령이 오른쪽 클릭 옵션입니까? 그리고 XP에서만, Vista 나 7에서는 그렇지 않습니까?
George MacDonald

1

지금까지 좋은 제안이 많이 있습니다. 당신은 또한 모든 것을 사용할 수 있습니다 . 관련 상위 폴더 인 "모든 검색"을 마우스 오른쪽 버튼으로 클릭하십시오. 그러면 폴더에있는 모든 항목의 목록이 제공됩니다. 폴더를 제외하기 위해 파일 형식별로 정렬하거나 검색에 파일 형식을 포함시킨 후 여기에서 이동 작업을 수행 할 수 있습니다.


"모든것이 좋아. Vista 이후의 "컨텐츠"스타일 검색은 파일 이름으로 검색하는 것만 큼 좋지 않습니다.
Matthew Lock

0

배치 파일과 'move'명령을 사용하여이 작업을 수행 할 수 있습니다.

스레드를 읽습니다 .


0

당신은 쉐어웨어 파일 관리 프로그램 인 Total Commander 를 얻을 수 있습니다. 폴더로 가서 Ctrl + B(모든 하위 디렉토리 분기를 의미합니다-이 디렉토리와 모든 하위 디렉토리의 모든 파일을 표시합니다), 모든 것을 선택하고 원하는 위치 (예 : 하나)에 복사하십시오 폴더 높이).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.