Windows 7 - Bir klasörde yalnız olan tüm dosyaları bulma


10

Klasörlerinde yalnız olan tüm dosyaları seçmenin bir yolunu bulmam gerekiyor, böylece onları başka bir yere kesip yapıştırabilirim. İlgili tüm klasörler, bir ana kök klasörün içindedir. Bunun için bir komut istemi veya toplam komutan hilesi var mı?


Alt dizinlerde ne olmak istiyorsunuz? Tek bir dosyayı bir veya daha fazla alt dizin içeren bir dizinde işaretliyor musunuz? Veya üst dosyasında başka bir dosyanın bulunmadığı tek bir alt dizin mi?
AFH

Yanıtlar:


5
@echo off
Setlocal EnableDelayedExpansion

SET ROOT_FOLDER=C:\TEST 1
SET TARGET_FOLDER=C:\TEST 2

FOR /D %%G IN ("%ROOT_FOLDER%"\*) do (
CD %%G
    FOR /f %%A in ('dir ^| find "File(s)"') do (
        set cnt=%%A
        Echo %%G  : !cnt!
        IF !cnt! == 1 (
            move /-y "*.*" "%TARGET_FOLDER%"
        )
    )
)

Bu Toplu İş C:\TEST 1alt klasörlerin içine bir sayım dosyası bakacaktır . yalnız bir dosya bulur bulmaz onu taşıyacaktır C:\TEST 2. dosya adının zaten mevcut olması durumunda üzerine yazmayı da isteyecektir.

Değiştirin C:\TEST 1ve C:\TEST 2kendi değerlerinizle.

yan yana eklediği pausedosya sayısını okumak için toplu işin sonuna ekleyebilirsiniz .


6
$src = "G:\temp"
$target = "G:\notalone"

if (Test-Path $src)
{
    $folders = Get-ChildItem $src -Recurse | ?{ $_.PSIsContainer }
    foreach($folder in $folders)
    {
        $fc = Get-ChildItem $folder.FullName | ?{!$_.PSIsContainer} | Measure-Object | Select-Object -Expand Count
        if ($fc -eq 1)
        {
            $file = Get-ChildItem $folder.FullName | ?{!$_.PSIsContainer} | Select-Object
            Write-Host "Moving " $file.FullName " to " $target
            Move-Item $file.FullName $target
        }
    }
}

Bu, Powershell'de çalışmalı, src ve hedefi değiştirmelidir. Aynı dosya adlarına sahipseniz, üzerine yazılmaz. Bunu yapmak için Move-Item'e kuvvet ekleyebilirsiniz.

Bu muhtemelen yoğunlaşmış olabilir, ben powershell acemi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.