web-dev-qa-db-ja.com

特定のファイルへのすべてのハードリンクを見つける方法は?

特定のファイルへのすべてのハードリンクを見つけるにはどうすればよいですか?つまり、ハードリンクを指定して、同じファイルへの他のすべてのハードリンクを見つけますか?

ファイルシステムはファイルへのハードリンクを追跡しますか?

ファイルのiノードには、ファイルへのハードリンクの数だけが格納されますが、ハードリンクは格納されませんよね?

44
Tim

指定されたファイルが/path/to/fileと呼ばれ、現在のディレクトリの下に存在するそのファイルへのすべてのハードリンクを検索する場合は、次のコマンドを使用します。

find . -samefile /path/to/file 

上記は、GNU findでテストされました。-samefilePOSIXではない ですが、 Mac OSX find および FreeBSD検索

ドキュメンテーション

からGNU man find

-samefile名
ファイルは名前と同じiノードを参照します。 -Lが有効な場合、これにはシンボリックリンクを含めることができます。

50
John1024