Как найти несколько файлов в нескольких подкаталогах?

С точки зрения безопасности, прямое переключение VT и использование «переключения пользователя» в GNOME эквивалентны. Функция «переключить пользователя» больше предназначена для того, чтобы сделать ее удобной для пользователя -, чем для обеспечения безопасности :. Это означает, что вам не нужно знать, на каком виртуальном компьютере вы вошли в систему, или даже вошли ли вы в систему. в еще.

Если две ваши учетные записи являются полностью отдельными (, в частности, ни одна из них не может никуда писать, другая учетная запись будет читать важную информацию из ), это уменьшит компрометацию на уровне пользователя -с одной учетной записи на другую. Чтобы определить, что представляет собой «безопасный» вариант для вас, действительно необходимо определить, какие риски вы хотите предотвратить или свести к минимуму, и как далеко вы готовы зайти для этого.

1
01.07.2020, 02:18
2 ответа

Вы запускаете find несколько раз, по одному разу для каждой строки в filenames.txt -, которая может быть узким местом.

Вы можете попробовать выполнить обратный процесс -сначала найти все файлы, а затем сравнить их с файлами из списка. Что-то вроде

find * > allfiles.txt
grep -f filenames.txt allfiles.txt
2
18.03.2021, 23:23

Вы можете сделать что-то вроде:

find. -print0 | gawk -F/ '
   ARGIND == 1 {selected[$0]; next}
   $NF in selected' filenames.txt RS='\0' -

То есть пусть findсообщает обо всех файлах, но выполняет фильтрацию с помощью gawkс использованием хэш-таблицы, построенной из содержимого filenames.txt.

Таким образом, вы запускаете findтолько один раз и выполняете сопоставление более эффективно.

Это предполагает, что filenames.txtпредназначен для содержания списка буквальных имен файлов, а не списка шаблонов подстановочных знаков.(find's -nameожидает шаблон подстановочных знаков, а не буквальное имя файла ).

1
18.03.2021, 23:23

Теги

Похожие вопросы