команда "deja-dup-preferences" просто создайте пункт меню на любом рабочем столе, который вы используете, который выполняет вышеуказанную команду, и на вашем рабочем столе откроется графический интерфейс
Глубина 0 — это аргументы командной строки, 1 — файлы, содержащиеся в них, 2 — файлы, содержащиеся в глубине 1 и т. д.
-mindepth N
указывает обрабатывать только файлы с глубиной >= N, подобно тому, как -maxdepth M
сообщает обрабатывать только файлы с глубиной <= M. Поэтому, если вы хотите, чтобы файлы находились на глубине 2, вам нужно использовать оба.
Ваша команда будет соответствовать $RAW_DIR/foo/bam.bam
, но не $RAW_DIR/bar.bam
.
Попробуйте, например.
$ mkdir -p a/b/c/d
$ find./a -maxdepth 2
./a
./a/b
./a/b/c
$ find./a -mindepth 2
./a/b/c
./a/b/c/d
$ find./a -maxdepth 2 -mindepth 2
./a/b/c
maxdepth
с отрицательным аргументом ничего не значит:
$ find./a -maxdepth -2
find: Expected a positive decimal integer argument to -maxdepth, but got ‘-2’
Параметры -mindepth 2
и -maxdepth 2
вместе ограничивают область действия find
каталогами на второй глубине от $RAW_DIR
.
Команда find
идентична команде оболочки bash
printf '%s\n' "$RAW_DIR"/*/*.{sam,bam} | wc -l
Будет подсчитано количество файлов .sam
и .bam
в подкаталогах $RAW_DIR
. Тем не менее, он по-прежнему будет давать 1 для отсутствия файлов, но, как и команда find
, он будет считать файл со встроенным символом новой строки в его имени как два файла.
Для абсолютно корректной find
команды, которая считает имена файлов, содержащих встроенные символы новой строки, как один файл:
find. "$RAW_DIR" -type f -mindepth 2 -maxdepth 2 \
'(' -name '*.bam' -o -name '*.sam' ')' -exec echo x ';' | wc -l
Это выведет x
в отдельной строке для каждого найденного файла, соответствующего критериям, и wc -l
подсчитает эти x -es.