
Ich bin nicht sicher, ob das möglich ist.
Ich mache ls -l, es gibt alle Dateien im aktuellen Verzeichnis aus. Gibt es eine Möglichkeit, mit einem Shell-Befehl nur Dateien aufzulisten, die nicht an Samstagen erstellt/geändert wurden?
Antwort1
So können Sie das tun:
$ LANG=C find . -maxdepth 1 -printf '%p %AA\n' |
awk '$NF=="Saturday"{next}{$NF=""}1'
Ich nehme an, wir drucken keine Dateien füralleSamstags. Dies ist, oder nicht, was Sie erwarten.
Antwort2
Antwort3
Wählen Sie die gewünschte Zeit aus.
%y
Änderung%w
Schaffung%z
ändern
oder eine beliebige Kombination:
stat * --printf="%n\t%y %z\n" | grep -vF $(date -d "last Saturday" +%F) | cut -f1
Wählen Sie außerdem aus, welche Informationen Sie benötigen, und verfassen Sie --printf=
eine Zeile.
Oder Sie können einfach find
den Befehl
find -maxdepth 1 -type f -daystart \
! -mtime $[$(date +%d)-$(date -d "last Saturday" +%d)]