自動的に2つのファイルを同期状態に保つ

自動的に2つのファイルを同期状態に保つ

異なるフォルダに同じ名前の2つのファイルを置き、ファイルの1つが変更されるたびに同じ変更を自動的に別のファイルに実装する方法はありますか?

ベストアンサー1

両方のファイルが同じファイルシステムにある場合(つまり、2つの異なるパーティションにない場合)、ハードリンクでファイルを作成できます。

ln /path/to/one_file /path/somewhere/other_file

これが完了すると、まったく同じファイルの2つの名前があります/path/to/one_file/path/somewhere/other_fileいずれかを削除しても、別の名前でコンテンツにアクセスできます。

これは、プログラムがファイルのいずれかのリンクを解放して再生成しない限り機能します。

同様に、ある名前から別の名前へのシンボリックリンクを作成できます。

ln -s /path/to/one_file /path/somewhere/other_file

この場合、/path/to/one_file実際のデータが含まれていますが、/path/somewhere/other_fileこれへの「ポインタ」(シンボルリンク)のみが含まれています。

両方のパスが同じファイルシステムにある必要はありませんが、プログラムがシンボリックリンクのリンクを解除してファイルに再生成すると、ハードリンクのように切断されます。

おすすめ記事