data la seguente struttura:
oz123@debian:~/ $ tree .
.
├── a
│ ├── a1
│ ├── a2
│ └── a3
├── a1
│ ├── a11
│ ├── a12
│ └── a31
├── b
│ └── b1
│ ├── b11
│ │ └── b21
│ │ └── b31
│ ├── b12
│ └── b3
└── c
16 directories, 0 files
Come trovo tutti i nodi finali?
Ho trovato le seguenti soluzioni che sembrano essere buone, ma devo provare che non esiste un caso di test che fallirà.
La pagina di aiuto degli -links
stati:
Puoi anche cercare file con un certo numero di collegamenti, con '-link'. Le directory normalmente hanno almeno due hard link; loro . l'ingresso è il secondo. Se hanno delle sottodirectory, ognuna di queste ha anche un hard link chiamato ... alla sua directory principale. Il . e .. le voci della directory non vengono normalmente cercate a meno che non siano menzionate nella riga di comando find.
possibile soluzione:
oz123@debian:~/ $ find . -type d -links 2
./a/a2
./a/a3
./a/a1
./c
./a1/a31
./a1/a11
./a1/a12
./b/b1/b12
./b/b1/b3
./b/b1/b11/b21/b31
- Qualcuno può fornire una soluzione migliore (senza usare pipe e sed, questo è stato performante ...)
- Funzionerà su qualsiasi filesystem?
-links 2
trucco. Non funzioneràbtrfs
.