Вы можете просто использовать *
; в этом нет необходимости *.*
. Расширения файлов не являются специальными в Unix. *
соответствует нулю или более символов - включая точку Так что это соответствует foo.png
, потому что это ноль или более символов (семь, если быть точным).
Обратите внимание, что *
по умолчанию не совпадает с файлами, начинающимися с точки (не совпадает *.*
). Это часто то, что вы хотите. Если нет, то в bash, если вы shopt -s dotglob
это сделаете (но все равно исключите .
и ..
). В других оболочках есть разные способы (или их вообще нет) включения файлов точек.
В качестве альтернативы zip
также имеется -r
(рекурсивная) опция для одновременного создания целых деревьев каталогов (и не нужно беспокоиться о проблеме с точечным файлом):
zip -r myfiles.zip mydir
где mydir
находится каталог, содержащий ваши файлы. Обратите внимание, что созданный zip-файл будет содержать как структуру каталогов, так и файлы. Как отмечает Петерф в своем комментарии, это обычно рассматривается как хорошая вещь: распаковка zip аккуратно сохранит все извлеченные файлы в одном подкаталоге.
Вы также можете сказать , почтовый индекс , чтобы не сохранять пути с -j
/ --junk-paths
опции.
Команда zip
поставляется с документацией, рассказывающей обо всех ее (многих) параметрах; введите, man zip
чтобы увидеть эту документацию. Это не уникально для почтового индекса; таким образом вы можете получить документацию для большинства команд.
zip myarch.zip mydir/*
?