Вы можете использовать опцию tar
's -I
, указав "программу сжатия":
tar -cvf archive.lz -I 'lzip -9' file1.txt file2.txt
Или вы можете направить вывод tar
черезlzip
:
tar -cvf - file1.txt file2.txt | lzip -9 > archive.lz
Оба варианта описаны в GNU tar manual(поиск первого-I
).
Используя select
, any
и all
, ваш фильтр сводится к
jq --argjson allowlist "$allowlist" \
--argjson blocklist "$blocklist" '.[] |
select( any (.my_key ; contains( $allowlist[] ) ) ) |
select( all (.my_key ; contains( $blocklist[] ) | not ) )'
Добавьте ascii_downcase
к значению my_key
в приведенном выше фильтре, если вам нужно contains
для работы со всеми строчными буквами.