2009-03-23 7 views
1
REM Detect how many files are on the C: drive 
dir /s /b C:\ |find /c "\" > NUMfiles.### 
set /p count1=<NUMfiles.### 

##### TEMP FILES DELETED HERE, RUN CCLEANER, RUN MBAM, ETC##### 

REM Calculate Total Files Deleted 
dir /s /b C:\ |find /c "\" > NUMfiles.### 
set /p count2=<NUMfiles.### 
set /a count3=%count1% - %count2% 
echo Number of files removed: %count3% 

これは私に正確な読書を与えているようではありません。誰も助けることができますか? スクリプトの前と最後に 'dir/s/b C:\ | find/c "\"を使ってコマンドラインで手動でチェックします。そして、%count3%からの出力は、手動チェックからの私の減算からは正確ではありません。あなたは私の質問を理解したいと思います。あなたはすべてのコンテンツに対して反復処理しなければならない場合バッチファイルから削除されたファイルの数

+0

@Methical - それは私のために働くのですか?私は1つのファイルを削除しましたcount3は1でした。私はあなたの最初と最後の "dir/s/b C:\"の差分を取得することをお勧めします –

+0

rse theresは違うが、バッチファイルの出力とスクリプトの実行前後で手動で "dir/s/b C:\"からの私の減算との違いを比較することはできません。戻り値は2です。そして、バッチファイルから削除された一時ファイルが多数表示されていました。 –

+0

ちょうどファイルの数をカウントする際にうまくいくはずの2番目のバージョンが追加されました。あなたはそれをチェックできますか? – VonC

答えて

0

、このコマンドラインはファイル(ファイルではなくディレクトリ)の数を一覧表示するには、より正確かもしれません:

dir /a /s /OG C:\ |find /v "<DIR>" | find /c "M " 

オフもちろん、これはdirがないと仮定します「AM」または「PM」と表示します。

れていない場合は、次のようにうまく動作する必要があります

dir /a /s /OG C:\ |find /v "<DIR>" | find /c "/" 
+0

私はそれが正しいとは思わない。私は8630の戻り値を得ましたか?私はC:ドライブにそれ以上のファイルがあると確信しています。あなたの助けをありがとう=) –

1

snemarchがmontinedとしてはい、あなたはすべてのものと一時ファイルをリストするという事実は、同様に一方無効に別のプロセスによって削除/追加することができ全力を尽くす。

「dir」コマンドに「/ ad」を追加すると、ディレクトリのリストが削除されるため、VonCの「find/v」をプロセスに追加する必要はありません。 。

、彼らが代わりに削除されますしながら、あなたがファイルをチェックしませんか?あなたのためにこれを使用しますが、あなたは間違いなく、ソースからの道、削除部分を再考する必要があるのか​​わからない。

私の提案。

関連する問題