foo
ファイルとディレクトリを含むディレクトリがあります。foo_0311
同じファイルを含み、ファイルが変更された場合は、更新を確認する新しいディレクトリをfoo
作成しますtouch foo_0311/a.txt
。a.txt
foo
以前は、これを行う方法がありましたが、bashの履歴が消えて再構築できなくなって失われました。次のように、最初に作成して使用するfoo_0311
プロセスが含まれていたことを覚えていますln
。
mkdir foo_0311
ln ???
しかし、オプションは覚えていません。 IIRC、cd
これを実行してを発行してディレクトリに移動すると、ファイルはls -l
リンクとして表示されませんが、変更は元のディレクトリfoo
に反映されます。foo_0311
foo
ベストアンサー1
cp
いわゆるリンクツリーの作成を要求できます。
cp -al foo foo_0311
-a
すべてを再帰的にコピーし、-l
ファイルをコピーするのではなく、ファイルへのハードリンクを作成します。
すでに存在する場合はfoo_0311
使用する必要があります。
cp -al foo/* foo_0311
代わりに。
これにより、シンボリックリンクの代わりにハードリンクが生成されるため、出力には->
表示されませんls -l
(ただし、2
2番目の列のおかげで見つけることができます)。両方のディレクトリのいずれかで作成された新しいファイルは別のディレクトリには表示されませんが、あるディレクトリで編集したファイルは別のディレクトリに表示されます。をする実際にはその場で修正されます。 (Emacsのようなエディタは新しいファイルを作成し、それを所定の位置に移動してそれを破りますが、実際には書き込み中にコピー形式を許可するので、ツリーをリンクするのに非常に便利です...)