Wie zeige ich alle versteckten und unsichtbaren Dateien in der Befehlszeile an (sowohl Dateien als auch Dateien mit unsichtbarer Markierung)?

1

Gibt es eine Möglichkeit, nur die versteckten und unsichtbaren Dateien in einem Verzeichnis über die Befehlszeile anzuzeigen?

Zum Beispiel ls -a | grep "^\." zeigt alle durch einen Punkt versteckten Dateien als erstes Zeichen an, aber was ist mit Dateien, die mit der unsichtbaren Markierung versteckt oder in .hidden aufgelistet sind (in der Praxis meist veraltet, mach dir darüber keine Sorgen)?

CyberSkull
quelle

Antworten:

3

Wenn die Dateien von Spotlight indiziert werden und Dateien in Unterverzeichnissen eingeschlossen werden können, können Sie mdfind verwenden:

mdfind kMDItemFSInvisible=1 -onlyin .

Oder testen Sie sowohl GetFileInfo -av (Attribut unsichtbar) als auch, ob der Name mit einem Punkt beginnt:

shopt -s dotglob nullglob
for f in *; do [[ $(GetFileInfo -av "$f") = 1 || $f = .* ]] && echo "$f"; done

GetFileInfo ist Teil des Befehlszeilen-Tools-Pakets, das in den Xcode-Einstellungen oder von heruntergeladen werden kann developer.apple.com/downloads .

Verschiedene Möglichkeiten, nur Dateien aufzulisten, die mit einem Punkt beginnen:

shopt -s nullglob; printf %s\\n .[^.]* ..?*
shopt -s dotglob nullglob; GLOBIGNORE='. ..'; printf %s\\n *
ls -a | grep -E '^(\.[^.]|\.\.[^$])'
Lri
quelle