A=Bで且つBの中からAに含まれない画像を削除したいのであるならば
Bのフォルダを削除。
AをBという名称で複製>解凍など
これがもっとも簡単だと思われます。
Bの画像からAに含まれない画像を抜き出すという作業なら別ですが…
コマンドプロンプトを使ってみよう!
こういう場合にはコマンドプロンプトが使えると便利です。
http://www.vector.co.jp/soft/dos/util/se044213.html
UNIQ(MS-DOS / ユーティリティ)
http://www.vector.co.jp/soft/win95/util/se015007.html
gawk win32(Windows95/98/Me / ユーティリティ)
1.Aのフォルダで
> dir /b *.* > list
として、ファイル名の一覧を出力する。
2.このlist をBのフォルダに移動させて
> dir /b *.* >> list
とすると、Bフォルダのファイル名が追記される。
3.listファイルをソートし、重複行を削除する。
> sort list | uniq | gawk ”{print ¥”del¥”,$1}” > list.bat
*uniq, gawk はそれぞれ上記のフリーソフト
*”や¥は半角で入力
4.バッチファイルlist.bat を実行する。
> list.bat
5.ファイル list, list.bat は削除。
これで完了です。
http://nomal.que.ne.jp/kohi/freesoft.shtml
�ӂ[�̂ف[�ނ[��
という作業を自動でやってくれるフリーソフトは沢山ありそうです。
ありがとうございます。参考にさせていただきます。
Windows.FAQ - ウィンドウズ処方箋
画像の名称=ファイル名ということでいきます。OSはWin2K/XPという仮定です。
コマンドプロンプトを開いてフォルダBに移動します。コマンドラインに以下のコマンドを入れます。
X:¥hoge¥フォルダB¥>for %I in (*.*) do if not exist フォルダA¥%~nxI do del %I
試しに2つか3つファイルを置いたテスト用フォルダを使ってテストしてみてください。
for コマンドの詳細はコマンドプロンプトから for /?で表示されます。
基本構文は以下のようなものです。
FOR %変数 IN (セット) DO コマンド [コマンドパラメータ]
ありがとうございます。挑戦してみます。
http://www.tohoho-web.com/wwwperl.htm
とほほのperl入門
Perlが使えるなら以下のソースで可能。
#!/usr/local/bin/perl
$dir_a = ”フォルダAのパス”;
$dir_b = ”フォルダBのパス”;
my %file_a;
opendir(DIR, $dir_a);
while(my $file = readdir(DIR)) {
next if ($file eq ’.’ || $file eq ’..’);
$file_a{$file} = 1;
}
close(DIR);
opendir(DIR, $dir_b);
while (my $file = readdir(DIR)) {
unlink($dir_b.’/’.$file) if ($file_a{$file} != 1);
}
closedir(DIR);
ありがとうございます。
http://itpro.nikkeibp.co.jp/free/NT/WinKeyWord/20040805/1/xcopy....
Windows���ޥ��ɽ�����xcopy��
すみません。手元で検証できないので幾らか憶測が入っています。
1.以下の操作で一旦Aフォルダの内容が消えます。操作ミスした時のためにも、まず両フォルダをバックアップしてください。
2.コマンドプロンプト(正確な名称を忘れました。スタートメニューのアクセサリに入っていたと思います)を立ち上げてください。
3.「xcopy /u 」と打ちます。リターンキーはまだ押さないでください。最後にスペースが要ります。
4.フォルダBをコマンドプロンプトにドラッグ&ドロップします。
5.コマンドプロンプトにスペースを入れます。
6.フォルダAをコマンドプロンプトにドラッグ&ドロップします。
7.コマンドプロンプトに「xcopy /u ”フォルダBのパス” ”フォルダAのパス”」と入力されている事を確認します。
8.リターンキーを押します。
これでフォルダAにフォルダBの該当するファイルのみがコピーされていると思います。確認してください。
あとはフォルダBを消してフォルダAの名前を変えたあと、バックアップからフォルダAを戻してください。
Win2kまではこれが使えたと思います。WinXPは使った事がないのでわかりませんが、たぶん大丈夫です。
丁寧にありがとうございます。もう少し募集します。
http://hp.vector.co.jp/authors/VA032597/
SIM-G's Junk Space
重複ファイル検索・削除 UnDup.exe
というソフトがあります。
オプション設定で名前のみ一致するものを検出するように設定できるので
試してみたらいかがでしょうか。
ありがとうございます
Windows XP.FAQ
3です。ポイント不要です。
コマンドがちと間違っておりました。
さっきのコマンドのうち後ろの方の Do は不要です。
ちなみに、 del %I を move %I フォルダCとすれば、目的のファイルを移動する事ができます。
ありがとうございます。
http://www.vector.co.jp/soft/win95/util/se302463.html
重複画像チェッカー(Windows95/98/Me / ユーティリティ)
「同じ画像だけど圧縮率が違う物を削除したい」ということですよね?
上記のソフトが便利ですよ。
http://www.vector.co.jp/soft/win95/util/se057348.html
AikoWin(Windows95/98/Me / ユーティリティ)
それとは別に、「複数のフォルダに全く同じファイルがある」場合は、上記のソフト(AikoWin)が便利です。
ありがとうございます。でも逆です。重複しているものを削除してはいけません。
http://ja.wikipedia.org/wiki/GUI
グラフィカルユーザインターフェース - Wikipedia
少し乱暴ですが、スクリプトもコマンドプロンプトも使わない方法ということで。
1. AフォルダをコピーしてCと名づけます。
2. BフォルダのファイルをすべてCフォルダに「移動」します。このとき、上書き確認のメッセージが出るのですべて「いいえ」にします。(キーボードのNを押し続けると楽かも)
3. Cフォルダを削除します。
以上です。
わかりやすいですね。ありっていえばありかも・・
URLはダミーです。
※ 現在のAフォルダ全体をコピーしてA’フォルダを作っておく
1) Bフォルダの全てのファイルをAフォルダ内に移動します。
2) すると、「このファイルには既に’○○’ふぁいるが存在します。上書きしますか?」というダイアログが出てくる。
3) そこで、「いいえ」を押す。(3000回聞かれるので、キーボードの「N」を押しっぱなしにしておくと楽です)
4) すると、Bフォルダには、Aフォルダと同じ名前のファイルだけ残ります。
5) Aフォルダには削除したいファイルが入ってしまっているので、最初に作ったA’フォルダを使えば、ご希望通りになるはずです。
Yahoo! JAPAN
私もコマンドは使いこなせますが、あまりにも難しく見える内容や
ソフトを必要として大変なものが多いので、ファイルの入れ替えっこだけで済む方法を。
1Bのフォルダをコピーしておきます。
2上記のBコピーフォルダ内へ、Aフォルダの中のファイルをすべて選択しドラッグコピーします。
名前が同じなのでBのファイルがAで上書きされて、
かつBフォルダの中で上書きされたAのファイルたちだけが選択された状態になります。
3編集メニューから、「選択の切替」を選択します。
これにより、AにないBの残りの画像が選択されます。
4この選択のまま、今度はコピーではない、元のBフォルダにドラッグして上書きコピーします。
上書きコピーが終わると、相変わらず3で作られたAにはないBの画像が選択されたままの状態になっています。
5その選択のまま、削除します。
6おしまいに、分類に使ったBフォルダのコピーを削除して終了です。
これだけです。ソフトもコマンドも要らず、すっきり終了です。
ただ、AとBのファイルの拡張子が違う場合は上記の前にRenameが必要です。 その場合はまた伝えますので返信下さい。
おぉほぼ同じこと考えていました!
http://www.hatena.ne.jp/1130660551
人力検索はてな - 質問です。AとBというフォルダが2つあります。Aには画像が3000枚、Bには画像が4000枚入っています。Bの4000枚のうち3000枚はAの3000枚と同じものです。画像の名称もおなじ..
一時フォルダXを作成しフォルダAのファイルを一時フォルダXにコピー(Aをバックアップ)。
フォルダBのファイルをフォルダAに上書きコピー。
エクスプローラにて「作成日時」を表示するチェックを入れておく。
フォルダAに元々無かったファイルにはその新規ファイル作成時(上記上書きコピー時)のタイムスタンプが出る。
したがって新規ファイル作成(更新日時ではない)が上記上書きコピーの時刻である1000ファイルをソートした後選択して削除する。
フォルダAをフォルダBにリネーム。
最初にバックアップしたフォルダXをフォルダAにリネーム。
なるほど。
「Macintoshなら」という条件付きですが。
1. A,B両方のフォルダを複製する。
2. Aのフォルダ内のファイルに「ラベル」で色を付ける。
3. 「2」で色を付けたファイルをBのフォルダに移動する。
4. 「上書きしますか」で「はい」を選択する。
5. Bのフォルダを開け、「並び替え順序」で「ラベル」を選択する。
6. 色の付いたファイル(=Aに入っていたファイル)を削除する(表示を「リスト」にすると楽にできます)。
ここまでの操作で、「BにあってAにないファイル」を抽出することができます。このファイル群を仮に「C」と呼ぶことにします。
7. Bのフォルダを再びコピーする。
8. Cに「ラベル」で色を付ける。
9. CのファイルをBのフォルダ内に移動させる。
10. 「上書きしますか」で「はい」を選択する。
11. Bのフォルダを開け、「並び替え順序」で「ラベル」を選択する。
12.色の付いていないファイル(=Cのファイル)を削除する(表示を「リスト」にすると楽にできます)。
ここまでの操作で「BとA共通の名前を持ったファイルをBから抽出」することができました。あとは、不要となった空のフォルダを2つ削除すると完了です。
使ってもよいMacintoshがあるようでしたら、お試し下さい。
環境はあります。それではこれにて終了します。皆さんありがとうございました。
説明不足でした。今回の場合の圧縮とはフォルダに圧縮がかかっているのではなくフォルダの中の画像にJPEGで画質を落としたものと落としていないものという意味です。