Wie kann ich ein Verzeichnis aus einem Befehl ausschließen/verbergen (Befehl „Finden“ oder „else“)?

Wie kann ich ein Verzeichnis aus einem Befehl ausschließen/verbergen (Befehl „Finden“ oder „else“)?

Wie schließe ich einen Ordner oder Pfad generell von einem Befehl oder einer Anwendung aus?

Ich versuche, einen Pfad vom findBefehl auszuschließen, aber verfügbare Möglichkeiten wie pruneOption erklärtHierUndHiermacht den Befehl ein wenig komplizierter, um erweiterte Suche zu erreichen

Antwort1

Für jeden Befehl oder jede Anwendung

Der Linux-Namespace kann problemlos verwendet werden mitFeuergefängniswie das folgende Beispiel

firejail --noprofile --quiet --blacklist=/path/to/exclude command-or-app

Alternative Möglichkeit zum Ausschließen von Verzeichnissenfind

firejail --noprofile --quiet --blacklist=/path/to/exclude find /search/location -name am-looking-for-this

Beachten Sie, dass diese Methode den Zugriff auf verweigert /path/to/exclude, der Befehl find stderr mit ausgibt access deniedund der Exit-Status nicht 0 ist. 2>/dev/nullkann am Ende des Befehls verwendet werden, um stderr bei Bedarf auszublenden, aber denken Sie daran, dass dies auch andere wichtige Fehler verbergen kann. Andere zusätzliche Implementierungen wieDasoderDaskann ebenfalls verwendet werden.

Suchbefehl:

Die im Befehl verfügbaren Optionen findwerden erklärtHier,Hierund das folgende Beispiel:

find . -path ./exclude/this -prune -o -print

verwandte Informationen