LINUX.ORG.RU

Наверное, это самая плохая встреча Нового Года в твоей жизни.

Возможно, ты единственный человек на этом континенте, пишущий скрипты-обёртки на баш-лапше в новогодние праздники.

Бедняжка.

EXL ★★★★★
()
Ответ на: комментарий от EXL

Пригласи его к себе отмечать, прояви человечность! Но в этот новый год я бы лучше писал код чем слушал истерические пьяные бредни родственников, весь мозг вынесли уже :D

Deleted
()
Ответ на: комментарий от EXL

Last active 4 days ago по урл-у намекает на то, что с самой встречей НГ у меня всё прошло замечательно. Но вот само ядро с 4.14.9 до 4.14.10 я вечером 31-го обновлял да. И это удивительно но всё работает отлично.

init_6 ★★★★★
() автор топика

Добра счастья и улыбок, забей на код и потрать день абсолютно в пустую на всякие радости.

Deleted
()
Ответ на: комментарий от init_6

ядро с 4.14.9 до 4.14.10 я вечером 31-го обновлял

# file /boot/vmlinuz
/boot/vmlinuz: Linux kernel x86 boot executable bzImage, version 4.14.10 (root@CR61-0M) #1 SMP Mon Jan 1 00:20:11 +07 2018, RO-rootFS, swap_dev 0x7, Normal VGA

Mon Jan 1 00:20:11 +07 2018

I know that feel bro.

Spoofing ★★★★★
()

для Ъ не будет

Просьба потестить

См. рис. 1.

dexpl ★★★★★
()
Ответ на: комментарий от init_6

tar creates and manipulates streaming archive files. This implementation can extract from tar, pax, cpio, zip, jar, ar, xar, rpm, 7-zip, and ISO 9660 cdrom images and can create tar, pax, cpio, ar, zip, 7-zip, and shar archives.

annulen ★★★★★
()
Ответ на: комментарий от annulen

Ты так пишешь как будто я не для того велосипежу чтоб делать распаковку автоматически.

init_6 ★★★★★
() автор топика

for opt in $@; do

Это развалит имена файлов по пробелам. ("$@"?) Если так и задумано (маловероятно) то должно быть задокументировано.

case "$opt" in

OPTIONS[${#OPTIONS[*]}]="$opt"

[[ "$PARALLEL" == "1" ]]

Квотинг не нужен, парсится по правилам для keyword.

d_a ★★★★★
()
Ответ на: комментарий от init_6

С помощью file можно определять тип архива по содержимому, а не по расширению, и не делать # extension aliases.

P.s. Что будет с твоим скриптом, если архив называется ololo, без расширения?

Deleted
()
Последнее исправление: MyLittleLoli (всего исправлений: 1)

Строки 30 и 51, возможно, содержат шелл-инъекцию. Потестите с файлами с пробелами в именах. Попробуйте разархивировать файл $(echo rm -rf).tar.xz.

anonymous
()
Ответ на: комментарий от Deleted

С помощью file можно определять тип архива по содержимому

Спасибо Капитан. Я сейчас как раз тем и занят что из одного старого поделия извлекаю разархивацию в отдельный не с ним связанный скрипт. И угадай как я там определял тип? Да именно по file -b --mime-type. А теперь смотри прикол:

 ➜ file -b --mime-type alsa-utils-1.1.5.tar.bz2
application/x-bzip2
 ➜ touch test
 ➜ bzip2 -z test
 ➜ file -b --mime-type test.bz2
application/x-bzip2

Итого tar.bz2 != bz2? А содержимое mime-type у нас одинаково application/x-bzip2 вывод таракан оглох вкручивать ещё один цикл ради этой ерунды?

Что будет с твоим скриптом, если архив называется ololo, без расширения?

Соглашусь только с тем что неплохо бы проверять соответствие mime-type и расширения и выводить предупреждение если оно не совпадает.

init_6 ★★★★★
() автор топика
Ответ на: комментарий от annulen

А зойчем велосипедить когда есть готовая тулза?

Какая бро? bsdtar из генты удалён ещё лет эдак с десять тому назад.

init_6 ★★★★★
() автор топика
Ответ на: комментарий от EXL

Я второй такой. Но у меня не печально, просто скучно тупить в телевизор, бухать не охота, а жрать тем более, т.к. уже обожрался.

deep-purple ★★★★★
()
Ответ на: комментарий от Deleted

О как! Спасибо но всё равно не хочу - свой велосипед ближе к телу.

init_6 ★★★★★
() автор топика

-xv --xversion print version

требую ключа --XxXpro100versionXxX

system-root ★★★★★
()
Ответ на: комментарий от init_6

вкручивать ещё один цикл ради этой ерунды?

Не обязательно, можно просто почитать man.

file -z olololo
olololo: POSIX tar archive (GNU) (bzip2 compressed data, block size = 900k)
legolegs ★★★★★
()
Ответ на: комментарий от legolegs

Не обязательно, можно просто почитать man.

Ну допустим. Однако всё равно не жизнеспособно.

init_6 ★★★★★
() автор топика

С недавнего времени перешёл исключительно на zstd и счастлив, теперь zip, rar, bz2, xz идут лесом. XZ иногда использую для сжатия исходников, когда их меньше 500 Мбайт, и то, только по причине распространённости lzma.

menangen ★★★★★
()

Нахрен он нужен, если не гуйный? В консоли прекрасно работается с голым tar. Надо будет написать гуй к нему на Kivy — не тянуть же всякие ark и file-roller в милый тайлинг.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от init_6

До чего ЛОР дошёл, уже за патч Бармина спасибо говорят. :)

hobbit ★★★★★
()
Ответ на: комментарий от menangen

zstd

Ты, считай, сделал мне офигенный новогодний подарок. Спасибо.

ShizuShidou
()
Ответ на: комментарий от EXL

Я на прошлый новый год один в общаге сидел, лексер на плюсах писал.

evilface ★★
()
Ответ на: комментарий от menangen

А чем zstd лучше чем zip, rar, bz2, xz ?
По степени сжатия 7z лучше сжимает, сравнивал командами ниже

zstd -z --ultra -22 -T4
7z a -t7z -m0=lzma2 -mx=9

Samamy ★★★
()
Ответ на: комментарий от Samamy

Ну, ты теперь время сравни. Zstd жмёт 3 минуты в 3 раза, а pxz жмёт 20 минут в 3.25 раза. В этом смысле, если дорого время, то на 0.25 можно положить. Если важен каждый байт, то xz/pxz, конечно, ещё даст фору на огромных размерах типа 5-50 Гб, но лично я выбираю время, пусть и потеряю примерно 500 Мб на 5 гигах.

menangen ★★★★★
()
Ответ на: комментарий от Samamy

Попробуй ещё со словарём сожми, там есть в zstd опция тренировки словаря, и время замеряй конечного результата, в т.ч. время разжатия.

menangen ★★★★★
()
    # extension aliases
    xcmd[tbz2]="${xcmd[tar.bz2]}"
    xcmd[tgz]="${xcmd[tar.gz]}"
    xcmd[txz]="${xcmd[tar.xz]}"
    xcmd[arj]="${xcmd[7z]}"
    xcmd[cab]="${xcmd[7z]}"
    xcmd[chm]="${xcmd[7z]}"
    xcmd[deb]="${xcmd[7z]}"
    xcmd[dmg]="${xcmd[7z]}"
    xcmd[iso]="${xcmd[7z]}"
    xcmd[lzh]="${xcmd[7z]}"
    xcmd[msi]="${xcmd[7z]}"
    xcmd[rpm]="${xcmd[7z]}"
    xcmd[udf]="${xcmd[7z]}"
    xcmd[wim]="${xcmd[7z]}"
    xcmd[xar]="${xcmd[7z]}"

Что же ты за человек-то такой, а.

anonymous
()
Ответ на: комментарий от anonymous

Что же ты за человек-то такой, а.

Можешь лучше? Показывай как.

init_6 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.