Важной частью в этом случае является
Список файлов заканчивается следующим аргументом, начинающимся с
-
, концом командной строки или знаком конца списка@
(аргумент, который равен просто@
).
При записи
zip -r --include '*.rb' '*.sh' '*.zsh' '*irb*' tmp/small_v.zip bin
tmp/small_v.zip
и bin
рассматриваются как файлы, переданные в --include
, поэтому zip
команда заканчивается без целевого файла и файлов для обработки.
--include
может располагаться где угодно, но его аргументы должны иметь смысл, а остальные аргументы должны быть идентифицируемыми. Вместо этого вы можете написать свою команду как
zip --include '*.rb' '*.sh' '*.zsh' '*irb*' -r tmp/small_v.zip bin
, используя параметр -r
, чтобы указать конец списка файлов для --include
, или использовать @
. ] для завершения списка:
zip -r --include '*.rb' '*.sh' '*.zsh' '*irb*' @ tmp/small_v.zip bin
Есть очень похожие примеры в конце раздела --include
в странице руководства zip(1)
.