web-dev-qa-db-ja.com

Mac上でコピーするときにフォルダをマージする(そして置き換えない)方法は?

Windowsについての同様の質問 があります。これは同じですが、Mac用です。ところで、それは Mac OS Xでは最も嫌いなこと のように思えるので、まだ疑問の余地はありません。

フォルダを既存の場所にコピーまたは移動しようとすると、 replace itと聞かれます。その結果、ターゲットが削除されます。むしろ、 merge にしたいのです。

これについてはすでに aquataskforce request がありますが、それがMac上に存在するはずのものであれば、その全体的な哲学のために 議論は長い間続く です。 Appleでのディスカッションは時代遅れです そしてそれほど役に立ちませんでした。

いつものように、 ChangesAraxis のようにこれを行うための専門的な解決策があります。そして rsync またはコマンドラインの選択肢があります。しかし、私は 無料でシンプルな の解決策を望んでいます。私はとにかくそれをあまりしません。ちなみに、 PathFinder 同様のオプションはなく、 FolderMerge はSnow Leopardでは動作しません。

解決策を思いつく人への提案:

正確ではない複製をすべて同じフォルダーに移動し、すべての複製を残すことをお勧めします。この場合、確認は不要です。後で重複を簡単に確認できます。マージをコピーしている場合は、ターゲットフォルダにすべてが含まれ、ソースには何も手が加えられません。重複チェックはファイル名だけです。もっと複雑なことは第三者に任せてください。

54
cregox

MacUpdateSoftpediaBrothersoft を試してください。フォルダマージを検索します。

フォルダマージ

フォルダの内容をマージする小さなソフトウェアユーティリティ

デフォルトではOSXはフォルダの内容をマージしないので、これはそれをするための簡単なGUIツールです。

単に2つの別々のフォルダにあるファイルをマージしたい場合は、フォルダマージを使用して簡単に実行できます。


ユニゾン

これは無料です。

Unisonは、UnixとWindows用のファイル同期ツールです。ファイルとディレクトリのコレクションの2つのレプリカを別々のホスト(または同じホスト上の別々のディスク)に格納し、別々に変更してから、各レプリカの変更をもう一方に反映させて最新の状態にすることができます。

6

ターミナルに入ったら、 typeditto from_folder destination_folder

例:

ditto ~/Desktop/SomeFolder ~/Desktop/SomeOtherFolder

絶対確実です。

57
Heitor Althmann

を押し続ける Option Mac OS Xのライオンのキーはあなたにそれから2つのフォルダーを併合する 'Keep Both'のオプションをあなたに与えます。

これは、Mac OS X 10.7 Lionの新機能の1つです。

30
Daniel Beck

私は、Finderでのmerge-replace-skipの本格的なサポートを提案しています。実際、Appleの単純志向の哲学が実際にはマウスの動きを増やし、クリック数を増やし、単純なことのように思えるようにするための手順が増えることに失望しています。そして、明らかに人々は、特にFinderでこの種の変化(他の多くのものの中で)を見たがっています。 Snow LeopardはCocoa-rewriteを使ってsomeをFTFFに向けて進めました。

このCocoa書き換えのおかげで、至福は プラグインを使ってSnow LeopardのFinderを拡張/ハッキングする機能になりました おかげで SIMBL は、 Cocoaベースのアプリケーションのハッキング/リバースエンジニアリング のための手段を提供します。ですから、誰かがFinderを拡張してこれをよりネイティブにサポートするようになるのは時間の問題です。とにかく、AppleはまだFinderの欠陥を非難することになっています、そして、彼らはまもなく立ち上がって、そしてただFreakin 'Finderを修正する必要があります。 (つまり、これはOSにとって非常に中心的なことで、これまでにこれを実現したと思います。)</ rant>

その間、あなたはあなたのローカルファイルとマージ機能を使うことにTransmitをだますことができます: http://andrew.hedges.name/blog/2007/01/16/merge-folders-with-transmit

14
purefusion

私は TotalFinder SIMBLの著者です。

「コピーオーバー」ではなく「置き換え」は、Finderの大きな問題です。私は個人的にこの「機能」のためにデータを失った二人を知っています。

他方で、なぜそれがこのように設計されているのか私は理解しています。その理由は、アプリケーションバンドルを移動していることにあると思います。アプリケーションバンドルはフォルダに過ぎません。アプリの更新をApplicationsフォルダにドラッグすると、古いファイルを残さずに古いアプリバンドルを完全に置き換えることができます(一部のアプリの作成者がバンドルのResourcesサブフォルダにあるファイルの存在を確認していると想像してください)。

わかりました、それでFinderは前のフォルダを削除します。しかし、間違った振る舞いはそれをゴミ箱に入れないことです。それは永久にそれを削除しますこれは本当に悲しくそして予想外です。


TotalFinderの時点でこの動作を変更しています。 SIMBLからこのプロセスを微調整するのは容易ではありません。 Finderのコピー/移動機能全体を自分のものに置き換えることを考えています。これにより、要求されたいくつかの機能を同時に実行できるようになります。

  1. カット&ペースト
  2. (PathFinderのように)進行状況ダイアログをより良くコピーする
  3. 意味上のコピーを実装する

ここでの問題は、それが不確実な結果を伴う多くの作業であるということです。


それまでの間、cp -r source/folder destination/folderとTerminal.appを使用する必要があります。

8

ここでは "simple"とは呼ばないような、 "今のところ" 2つの解決策がありました。幸運にも、私は つまずいた

alt text

これはFileMergeと呼ばれ、Mac OSX CDからXcode開発者ツールをインストールするか Appleからダウンロードすると/ Developer/Application/Utilitiesにあります。 .

最初に選択した2つのフォルダを比較してから違いを表示します。その後、ファイルを1つの保存先ファイルにマージするかどうかを選択できます。

それでも私が提案したほど単純ではありませんが、少なくとも1.5 GBの空き容量がインストールに必要な場合は、少なくともこれが「一方で」知られているオプションである必要があります。 "cp"は追いつくのが難しく、サーバー+ Transmitはそれがローカルでない限りあなたにそれをさせません。

これで、Xcodeをインストールせずにそれを使用する方法が必要になりました...管理できれば後で編集します - これは、多くのgooglingの後には単純な問題ではないようです。

3
cregox