Listar todos os arquivos com o mesmo número de inode?


53

Digamos que, quando eu faço ls -lidentro de um diretório, recebo o seguinte:

12353538 -rw-r--r-- 6 me me 1650 2013-01-10 16:33 fun.txt

Como mostra a saída, o arquivo fun.txt possui 6 links físicos ; e o número do inode é 12353538 .

Dado o caso, como encontro todos os links físicos para o arquivo, ou seja, arquivos com o mesmo número de inode?

Respostas:


56
find /mount/point -samefile /mount/point/your/file

3
@TheoneManis Acabei de notar que as outras partes da chamada de localização não são necessárias. findé inteligente o suficiente para usá-los implicitamente. Normalmente, você deve fornecer findum caminho de pesquisa e informar que não deve deixar esses sistemas de arquivos (via links simbólicos ou pontos de montagem). Mas, ao procurar links físicos, fica claro em qual sistema de arquivos procurar.
— Hauke Laging

6
Hauke, isso depende da versão do achado que você está usando. A versão GNU pode fazer isso, mas a versão BSD não, e isso não funcionará como está no Mac.
— Alan Shutko

3
Você pode adicionar -xdevpara evitar a descida para diretórios em outros sistemas de arquivos, caso contrário, poderá encontrar outro arquivo com o mesmo número de inode localizado em outro sistema de arquivos.
— mmoya

O equivalente quase -samefileno HP-UX é -linkedto(embora seja um pouco diferente: um caminho de pesquisa ainda deve ser especificado, por exemplo).
— Nick

3
Observe que, se você não estiver na raiz do seu ponto de montagem, o find irá explorar apenas as subpastas da pasta atual. Então você deve realmente dizer algo comofind /mount/point -samefile /mount/point/your/file
— Calimo

52

Se você já possui o número do inode, pode usar a -inumopção find :

find -inum 12353538

11
Não se esqueça de cd para a raiz do sistema de arquivos ou especifique-o como um caminho para encontrar, como find /mount/point -inum 12353538. Caso contrário, o find aparecerá apenas abaixo da pasta atual.
— Calimo #
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.