Почему я вижу разницу в количестве файлов между Nautilus и find?

Я нашел обходное решение для этого, а не фактическое решение.

Откройте приложение Screenshot, в открывшемся окне установите время как «Захват» после задержки в х секунд.

Примечание: Это невозможно использовать для захвата определенной части окна.

Примечание: Извините, также не возможно сделать снимок экрана Захват после задержки из x секунд приложение как окно или захват определенной части.

1
задан 23 January 2013 в 05:04

2 ответа

В них могут быть имена файлов с новыми символами. Очень нецелесообразно, но технически возможно. Это может быть ваше упражнение.

Один из способов надежного подсчета файлов в каталоге - сделать find печатать что-то, что можно считать надежно, то есть с одним элементом в файле. [!d1 ] find ./dirName -printf a | wc -c

Имейте в виду, что find включает в себя dirName и рекурсирует в подкаталоги.

Если вы хотите только файлы внутри dirName, без рекурсии, пусть оболочка посчитает их:

GLOBIGNORE=.:..
set -- *
echo $#
1
ответ дан 25 May 2018 в 02:12
  • 1
    Nautilus также переписывается в подкаталоги с этим количеством файлов. В этом смысле это всего лишь 1-офф. Вы правы в новостях. Подсчет путем разбора вывода на wc не является действительно надежным. – gertvdijk 23 January 2013 в 04:32
  • 2
    Является ли нижний набор команд терминала кода или сценарием оболочки? – danielcooperxyz 23 January 2013 в 05:01
  • 3
    @ D4nC00per Либо. Запустите его в bash. – Gilles 23 January 2013 в 05:12

Попробуйте проверить вывод find:

find somewhere | less

Вы увидите, что find по умолчанию выводит любой файл, не делая различий в зависимости от типа или имени. Nautilus вместо этого не учитывает стартовый каталог (somewhere в примере) или файлы, которые он не будет показывать при просмотре.

Чтобы решить проблему, воспользуйтесь опцией -type find: [!d2 ]

find somewhere -type f | wc -l
find somewhere ! -type d | wc -l

Первая строка будет искать все обычные файлы. Второй - все элементы без каталога (т. Е. Обычные файлы, блокирующие устройства, UNIX-сокеты и т. Д.). См. [F7] для получения дополнительной информации.

Возможно, вам, вероятно, интересно читать о -H, -L и -P, которые управляют тем, как find должны обрабатывать символические ссылки (и, следовательно, как влияют символические ссылки числа).

0
ответ дан 25 May 2018 в 02:12

Другие вопросы по тегам:

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