Como encontro todos os links simbólicos personalizados em todo o sistema?

1

Eu criei vários links simbólicos em lugares diferentes.

Eu não consigo me lembrar de onde cada um deles está no sistema e já removi os programas com os quais eles estão associados.

Existe um script / programa / qualquer coisa que possa pesquisar o sistema inteiro e remover qualquer link simbólico que seja criado sob encomenda?

    
por JohnDoea 30.12.2015 / 21:13

3 respostas

2

Como você removeu os programas associados / alvo, eles devem ser quebrados. Por isso, deve ser fácil procurar por links simbólicos quebrados:

find . -type l -exec sh -c "file -b {} | grep -q ^broken" \; -print

Altere . para pasta de pesquisa diferente.

Fonte: Como posso encontrar links simbólicos quebrados

Você também pode filtrar usando o nome do link ou o nome do destino esperado, em vez de testá-los.

    
por user.dz 18.01.2016 / 14:29
1

find . -user "$USER" -type l

Lista todos os links simbólicos sob o diretório atual e subdiretórios criados pelo usuário. Isso também significa criado por um programa que seu usuário (você) iniciou, mas se você puder lembrar de criar o link simbólico listado, tudo bem. Verifique o último horário de acesso, se não tiver certeza. Se você também quiser seguir os links, passe -L .

    
por Alex 30.12.2015 / 21:29
0

Não há como distinguir os links simbólicos "personalizados" dos links simbólicos "não personalizados".

Se todos eles foram criados sem sudo / sendo root, você poderá usar isso, o que gerará a lista completa de links simbólicos pertencentes ao seu usuário (que deve ser muito curta):

find / -xdev -user "$USER" -type l

Caso contrário, você está sem sorte. Eu tentei:

find / -xdev -type l

no meu sistema e tenho ~ 49000 resultados.

    
por kos 30.12.2015 / 21:28