Можно ли искать файл в ОС Linux, который имеет конкретный расширенный атрибут, например: ---S--l---
---S--l--- 1 root root 0 Mar 1004:25/opt/csTuner/iba/wys/tuer_lolk
Что S в разрешениях:
S - изменения синхронно записываются на диск; это эквивалентно опции монтирования `sync ', применяемой к подмножеству файлов.
Моя цель - найти файлы, которые синхронно записываются на диск.
find
не может искать атрибуты файла (это что-то еще, чем разрешения!) самостоятельно.
В одну сторону:
find /location -type f -print0 | xargs -0 lsattr | grep '^...S'
В моей системе S
находится в третьем столбце списка lsattr
output, поэтому, чтобы сделать его более гибким, мы можем использовать более сложное регулярное выражение:
find /location -type f -print0 | xargs -0 lsattr | grep '^[^ S]*S[^ S]* '
где grep '^[^ S]*S[^ S]* '
должен найти все, что имеет S
в первом столбце.