как найти два разных файла с помощью команды find

Их репозиторий сломан по вашему запросу.

Сравните этот файл (0k):

http://repo.mysql.com/apt/debian/dists/buster/mysql-8.0/binary-i386/Packages

на этот (26к):

http://repo.mysql.com/apt/debian/dists/buster/mysql-8.0/binary-amd64/Packages

или этот (3k):

http://repo.mysql.com/apt/debian/dists/buster/mysql-tools/binary-i386/Packages

т. е. :Первый файл «Пакеты» пуст; и это ненормально:https://wiki.debian.org/DebianRepository/Format#A.22Packages.22_Indices

-2
29.09.2021, 14:02
2 ответа

Предполагая, что у вас есть дата в форме YYYYMMDDв переменной оболочки date, вы можете обрезать два первых символа с помощью ${date#??}.

Теперь вы можете использовать findдля поиска обычных файлов в текущем каталоге или ниже него, имена которых соответствуют одному из двух шаблонов *$date.zipили *.D${date#??}.*.

find. -type f \( -name "*$date.zip" -o -name "*.D${date#??}.*" \)

Приведенный выше код найдет два файла (или по крайней мере эти два файла ). Вызовите утилиту с помощью опции -execв find, если вы хотите что-то сделать с файлами. Поскольку вы не говорите, как вы планируете использовать файлы, здесь невозможно привести практические примеры.

1
29.09.2021, 14:35

Вы можете указать несколько -name PATTERNпараметров, например

find. -name PATTERN1 -o -name PATTERN2
2
29.09.2021, 14:33

Теги

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