私のデスクトップには、それぞれ約600個の画像を含む2つの画像フォルダがあります。両方のフォルダに重複した画像があり、同じファイル名を持つ画像もあります。 2つを一緒にマージする方法 - 重複した画像やファイル名の変更には問題はありませんが、1つのフォルダにのみ存在したいです。
PS。私はコマンドラインを初めて使用します。
答え1
コマンドラインを初めてお使いの方なのでステップごとに一つずつ説明します。
ターミナル/シェル/コマンドラインを開くと、次のコマンドプロンプトが表示されます。
username:~ $
またはそのようなもの。ユーザー名を含むホームディレクトリから始めることはほぼ確実です。
2つの画像フォルダfolder1
がありますfolder2
。デスクトップにいると言われたので、まず次のディレクトリに切り替えますDesktop
。
cd Desktop
このcd
コマンドは「ディレクトリ変更」コマンドで、音と正確に一致します。
mv
これで、「移動」を意味するコマンドを使用します。
mv -i folder1/* folder2/
私は-i
「対話型」を意味し、ファイル名の競合があるたびにメッセージを表示するフラグを使用しました。ターゲットファイルを上書きするように求められます。
その後、アーカイブされたファイル*の名前を変更してfolder1
競合しないように手動で競合を解決する必要がありますfolder2
。最後に、上記のコマンドを再実行しますが、今回は競合しないでください。
結局のところfolder1
、ディレクトリは空でなければならないので削除してください。
rmdir folder1
もう終わりました!
以下の簡単なbashチュートリアルを読んでください。これ基本を学びましょう。
- もちろん、名前の競合は、各ファイルの名前を変更することでプログラム的に解決することができますが、
folder1
私は単に仕事を維持しようとしています。
答え2
グラフィカルユーザーインターフェースを含む
必要でない場合は、コマンドラインを使用する必要はありません!すべてのファイルマネージャでは、少なくともディレクトリ間の移動、ディレクトリの作成と削除、ファイルの移動などを実行できます。ソースディレクトリのファイル名がターゲットディレクトリのファイルと同じ場合、一部のファイルは他のファイルよりも複雑になることがあります。
重複した画像を検出して削除するには、次のものを使用できます。ゲッチ。 (配布用のパッケージをインストールしてくださいgeeqie
。)永続的な「ディレクトリモード」(サムネイルで現在のディレクトリの画像の一覧を表示して簡単にナビゲートできます)と重複検出(メニュー「ファイル」→「重複する項目を検索」)を押してから、すべて画像をドラッグアンドドロップして、現在選択されている画像に対して基本的なファイル操作(コピー、移動、削除、おおよその名前変更機能)を実行することもできます。
コマンドラインの使用
本当にコマンドラインを使用したい場合は、Huayuantouは良い入門書を書いた。。もう少し高度なコンテンツを追加します。
に同じ名前のファイルがすでに存在しない限り、すべてのファイルをからにfolder1
移動するには、次のようにします。folder2
folder2
yes n | mv -i folder1/* folder2/
名前が競合するファイルはに残っているため、folder1
そのファイルを調べて名前を変更するか削除するかを決定できます。
一意の名前を持つようにファイル名を変更する場合は、適用できるいくつかの戦略があります。画像がある場合EXIFデータがある場合は、撮影日などの追加情報を含めるようにファイル名を変更できます。 EXIFデータがなくても、サイズなど一部の画像特性を含めたい場合があります。バラよりEXIFデータに基づいて写真の名前を変更するには?、名前に作成日を含めるように画像の名前を変更する、すべてのファイルの名前を変更し、ファイル名に画像サイズを追加する方法、画像ファイルの名前を年齢別に一括変更し、ファイル名に日付と変数を追加します。、...いくつかの可能性があります。ファイルに一意の名前を付けるには、次のようにします。番号を付ける。
コマンドラインユーティリティを使用して視覚的に類似した画像を取得するには、次のものを使用できます。findimagedupes
(再配布用のパッケージをインストールしてください。)
答え3
あなたmv
が持っているならゲヌfoo
、次を使用してあるディレクトリから別のディレクトリにファイルを移動し、bar
既存のファイルの名前を変更できます。
mv --backup=numbered foo/* bar
(失う恐れのあるファイルに対してこのコマンドを実行する前に、サンプルデータをテストする必要があります...)