Задание для проведения подсчета XML-файлов

Попробуйте это: cat /etc/sysconfig/desktop

Это должно сказать что Ваш DISPLAYMANAGER и DESKTOP установлены на. Этот файл используется /etc/X11/xinit/Xclients определить который рабочий стол запуститься.

5
12.05.2012, 12:22
2 ответа

Демон, которого Вы описываете, мог использовать inotify.

Но возможно использование find и wc -l уже было бы достаточно быстро?

Я только запустил один быстрый тест, но существует значительная разница между time ls -lR /mm/|grep -c jpg (real 0m2.168s) и time find /mm -type f -name \*jpg|wc -l (real 0m0.397s) в моей системе. Оба возврата приблизительно 42 000 файлов, таким образом, различие на больших каталогах, вероятно, было бы больше.

(Я выполнял обе команды несколько раз для исключения эффектов кэширования диска.)

6
27.01.2020, 20:36
  • 1
    Спасибо за Ваши исходные данные. найдите и туалет-l занимает много времени, также некоторый notifier лучше, как количество изменений файлов очень меньше, таким образом, повторяющаяся находка и туалет-l не удовлетворяет mycase. –  Novice User 12.05.2012, 16:41
  • 2
    Подсчет строк мог бы требовать времени. Но можно использовать "-printf ". параметр находки и канала это в "туалет-c" для подсчета печатных точек. Это должно быть быстрее (см. мой ответ). –  hluk 12.05.2012, 18:41

Следующий сценарий будет смотреть каталог неограниченно долго и печатать количество '*.xml' файлы каждый раз изменения содержания каталога.

DIR="a_path_to_directory_to_watch"
(echo; inotifywait -m -r -e create -e delete "$DIR" 2> /dev/null) |
    while read; do
        find "$DIR" -name '*.xml' -printf . | wc -c
    done
3
27.01.2020, 20:36

Теги

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