The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Доступен консольный файловый менеджер nnn 4.0, opennews (??), 17-Апр-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


23. "Доступен консольный файловый менеджер nnn 4.0"  +2 +/
Сообщение от СеменСеменыч777 (?), 17-Апр-21, 12:58 
любителям bash (и zsh) про то расскажите.
они не верят мне, когда я говорю, что их любимые шеллы СЛИШКОМ РАЗЖИРЕЛИ.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

24. "Доступен консольный файловый менеджер nnn 4.0"  +1 +/
Сообщение от VINRARUS (ok), 17-Апр-21, 13:40 
>любителям bash (и zsh) про то расскажите.
>они не верят мне, когда я говорю, что их любимые шеллы СЛИШКОМ РАЗЖИРЕЛИ.

Я всегда прошу сравнить время выполнения простейшей арифметики:
time dash -c 'D=1; while true; do if [ "$D" -lt 1000000 ]; then D="$((D+1))"; else break; fi; done'
time bash -c 'D=1; while true; do if [ "$D" -lt 1000000 ]; then D="$((D+1))"; else break; fi; done'

Ответить | Правка | Наверх | Cообщить модератору

33. "Доступен консольный файловый менеджер nnn 4.0"  –1 +/
Сообщение от vrein (ok), 17-Апр-21, 14:30 
| time bash -c 'D=1; while true; do if [ "$D" -lt 1000000 ]; then D="$((D+1))"; else break; fi; done'
bash -c   6.44s user 0.00s system 99% cpu 6.447 total
| time zsh -c 'D=1; while true; do if [ "$D" -lt 1000000 ]; then D="$((D+1))"; else break; fi; done'
zsh -c   4.18s user 1.28s system 99% cpu 5.463 total
| time dash -c 'D=1; while true; do if [ "$D" -lt 1000000 ]; then D="$((D+1))"; else break; fi; done'
dash -c   1.95s user 0.00s system 99% cpu 1.950 total

При этом можно чутка подзабить на posix и выиграть времени, но до dash оно не дотягивается

| time bash -c 'D=1; while true; do if [[ "$D" -lt 1000000 ]]; then D="$((D+1))"; else break; fi; done'
bash -c   5.33s user 0.00s system 99% cpu 5.336 total
| time zsh -c 'D=1; while true; do if [[ "$D" -lt 1000000 ]]; then D="$((D+1))"; else break; fi; done'
zsh -c   2.64s user 0.92s system 99% cpu 3.561 total

Ответить | Правка | Наверх | Cообщить модератору

132. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (132), 18-Апр-21, 12:03 
> можно чутка подзабить на posix и выиграть времени, но до dash оно не дотягивается

Можно пойти чуть дальше и дотянуться:

time dash -c 'D=1; while true; do if [ "$D" -lt 1000000 ]; then D="$((D+1))"; else break; fi; done'
dash -c   1,99s user 0,00s system 99% cpu 1,987 total
time zsh -c 'while ((D++ < 1000000)); do :; done'
zsh -c    1,34s user 0,52s system 99% cpu 1,855 total

Ответить | Правка | Наверх | Cообщить модератору

34. "Доступен консольный файловый менеджер nnn 4.0"  +2 +/
Сообщение от анонн (ok), 17-Апр-21, 14:31 
> Я всегда прошу сравнить время выполнения простейшей арифметики:


$ time bash -c 'D=1; while true; do if [ "$D" -lt 1000000 ]; then D="$((D+1))"; else break; fi; done'    
bash -c   14,70s user 0,00s system 99% cpu 14,700 total
...
zsh -c   8,60s user 1,67s system 99% cpu 10,268 total
...
mksh -c   7,63s user 0,01s system 99% cpu 7,642 total
...
dash -c   4,52s user 0,79s system 99% cpu 5,309 total
...
sh -c   2,64s user 0,00s system 99% cpu 2,643 total

Жирноват и тормозноват ваш dash 😉
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

76. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от data man (ok), 17-Апр-21, 20:29 
А где же fish?! :)
Ответить | Правка | Наверх | Cообщить модератору

118. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от анонн (ok), 18-Апр-21, 01:12 
> А где же fish?! :)

Где-то там, в репе. Он же ЕМНИП в первую очередь для интеактивщины, да еще и синтаксис не очень совместим.

Ответить | Правка | Наверх | Cообщить модератору

42. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (28), 17-Апр-21, 15:18 
и много у вас в реальных скриптах подобной арифметики?
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

45. "Доступен консольный файловый менеджер nnn 4.0"  –1 +/
Сообщение от VINRARUS (ok), 17-Апр-21, 15:45 
Ну так bash во всём тормозной, а арифметика это простейшый пример.
Ответить | Правка | Наверх | Cообщить модератору

46. "Доступен консольный файловый менеджер nnn 4.0"  +1 +/
Сообщение от Аноним (77), 17-Апр-21, 15:49 
Этож скорее не в арифметике дело.
Баш медленно циклы прокручивает, тоже самое если echo делать или с файла читать построчно и выводить.
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

83. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (83), 17-Апр-21, 21:35 
В прошлый раз уже пришли к выводу, что баш это в первую очередь про удобство (те же массивы незаменимы, хоть и жрут память), зш про комфортный глобинг и прочее подобное (но кучи маст хэвных возможностей баша очень не хватает, а массивы довольно специфические) -- например натуральная сортировка чисел при глобинге (в баше это только костыль с ls -v), а остальные шеллы могут использоваться если там памяти всего 32 мегабайта и не нужен сложный доступ к структурам. Просто шеллы оптимизируют разные веши и то, что считаешь ты, никем не востребовано в принципе.
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

99. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от VINRARUS (ok), 17-Апр-21, 22:33 
>Просто шеллы оптимизируют разные веши и то, что считаешь ты, никем не востребовано в принципе.

Ага, а потом появляются всякие system:D шоб избавиться от тормозов bash.

Ответить | Правка | Наверх | Cообщить модератору

102. "Доступен консольный файловый менеджер nnn 4.0"  +1 +/
Сообщение от Аноним (83), 17-Апр-21, 22:38 
Так-то systemd нисколько не быстрее openrc, то был false advertising, Ох уж эти мифические тормоза bash, которые никто не видел.
Ответить | Правка | Наверх | Cообщить модератору

106. "Доступен консольный файловый менеджер nnn 4.0"  +1 +/
Сообщение от Аноним (106), 17-Апр-21, 22:44 
Так то systemd о том чтобы сделать (ставшую довольно большой) систему управляемой.

И когда выбор между мелким codeless конфигом и вон теми закорюками как VINRARUS вывалил, извините, но я готов поттерингу даже донат занести, чтобы он сделал меня развидеть это.

Более того - в этом вашем openrc можно посмотреть 1 простой командой дельту относительно дефолтного состояния системы? Или все зашедуленые по таймеру задачи? А вачдоговать процессы оно умеет? В том числе не сетевые? Или вы имеете предложить более быстрых лошадей, при том что люди уже давно пересели на автомобили?

Ответить | Правка | Наверх | Cообщить модератору

110. "Доступен консольный файловый менеджер nnn 4.0"  +2 +/
Сообщение от Аноним (83), 17-Апр-21, 22:59 
С чего вы решили, что это всё задача инита? Тут вроде посыл был, мол, systemd быстрее баша. На деле это не так, баш и гибче опять же, и быстрее, и меньше недокументированного поведения в бинарях имеет -- проще отлаживать. Не понимаю, что такое "относительно дефолтного состояния", и зачем это может понадобится -- вроде точно такие же костыли, как и всё остальное.
Ответить | Правка | Наверх | Cообщить модератору

138. "Доступен консольный файловый менеджер nnn 4.0"  –1 +/
Сообщение от Аноним (-), 18-Апр-21, 12:52 
> С чего вы решили, что это всё задача инита?

С того что...
1) Инит и список запускаемого им барахла всяко есть.
2) Выколупывать одинаковую конфигурацию системы из дюжины закоулков suxx.
3) Init в правильном месте и в правильное время: высокопривилегированный процесс, всегда есть, может отвесить все потребные сисколы и собрать процессу арену как надо.
4) Все это логично интегрируется с мониторингом и рестартом. Зачем мне два-три описания одного и того же? Это ведет к лишним сложностям, багам и глюкам.
5) Лично мне удобно что инит умеет логгить статусы программ и все такое. На баше при любом факапе приходилось самому логгинг кодить зачастую, потому что в системных логах глухо.

> Тут вроде посыл был, мол, systemd быстрее баша.

Как минимум, системд не тормоз - при загрузке система упирается обычно во что угодно кроме него. Ну там в диск, в общий жрач проца толпой сервисов, etc. А вот баш в этом контексте часто попадал под внимание не с лучшей стороны. Так что кроме всего прочего, после перехода *бунт и дебианов на systemd у меня комп на SSD стал вваливаться в десктоп за этак 5 секунд. До этого было секунд 15. Разница.

Как угодно но улучшение vs то что было, в той же конфиге - было заметно невооруженным глазом. Так что все эти свидетельства иеговистов можете себе оставить. Я на идентичной конфиге имел возможнось сравнить, видите ли.

> На деле это не так, баш и гибче опять же,

Проблема в том что этим начали злоупотреблять, и вместо компактной аккуратной конфиги сервиса вот вам несовместимые по дистрам простынки, где конфиг раскидан на добрых трех страницах гамнокода очень среднего пошиба, да еще вон там на второй странице. Очень удобно.

> и быстрее, и меньше недокументированного поведения в бинарях имеет

Я все это ощутил сполна, спасибки. Только системой управлять неудобно почему-то. Особенно кастомный сервис добавлять.

> -- проще отлаживать.

Дооо, я это ощутил, когда сервис не стартует и в логах ноль, так что идешь и кодишь себе логгинг. Ну а с системд весь этот системный онанизм мне как-то больше не требуется, он и сам может stdin/out и кривые коды возврата в лог записать вот. И systemctl показывает участь сервиса, даже если он уже закруглился сто раз.

Не говоря о том что он мне может собрать изолированную песочницу. Которую на баше заколебешься, однако. Это все круто, гибко, но надо либо затолкать в изолируемое окружение половину операционки, либо оно на середине сборки окружения обломается потому что уже спилило себе доступ к нужной проге, etc. А, ну да, луддиты рассказывают про круть и гибкость, но например лишние сисколы процессу грохнуть или там от основной ФС их отделить - от вас таких крутых и гибких не дождешься.

> Не понимаю, что такое "относительно дефолтного состояния",

Это ващи проблемы уже. Есть состояние системы как она майнтайнерами предоставлена. А есть изменения которые я вкатил. Ну то-есть дебиан 10 - вполне конкретная величина. А мои изменения относительно него - это мои измененя относительно него. И мне удобно референситься относительно этого.

> и зачем это может понадобится -- вроде точно такие же костыли, как и всё остальное.

Затем чтобы понять что кастомного и необычного есть в системе относительно дефолтов дистра. Заодно оно хорошо дружит с пакетным менеджером. Есть дефолты в usr, есть оверрайды в /etc и пакетный менеджер оверрайды ни в коем разе не тронет, а они приоритетнее.

Ответить | Правка | Наверх | Cообщить модератору

120. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от СеменСеменыч777 (?), 18-Апр-21, 05:59 
1) что такое "состояние системы" ? разверните буллшит термин до уровня "пощупать руками" и сразу поймете что с этим делать.

2) все зашедуленные задачи в кронтабах.

3) процесс, нуждающийся в watchdog - дефектный и должен быть выкинут либо заменен.

4) ваша аналогия кривая, как сам системд.

Ответить | Правка | К родителю #106 | Наверх | Cообщить модератору

137. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (132), 18-Апр-21, 12:19 
> что такое "состояние системы" ?

В данном случае — набор задач, которые выполняет (или считает выполненными) системный менеджер. rc-status в openrc, systemctl list-units в systemd.

> все зашедуленные задачи в кронтабах.

Как заставить крон дампнуть всё это? Как быть с относительными таймерами, реализованными в shell-портянках sleep'ами?

> процесс, нуждающийся в watchdog - дефектный

Мы живём в неидеальном мире и иногда имеем что имеем.

Ответить | Правка | Наверх | Cообщить модератору

142. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (-), 18-Апр-21, 14:25 
> 1) что такое "состояние системы" ? разверните буллшит термин до уровня "пощупать
> руками" и сразу поймете что с этим делать.

Система - подложка для запуска тех или иных сервисов. Я хочу знать что и почему запущено, по каким критериям, нормально ли это работает и проч.

> 2) все зашедуленные задачи в кронтабах.

Проблема в том что это - не там же где запуск программ. И мне надо два раза конфигурацию одного и того же по смыслу. Не то чтобы это сильно удобно и практично, и больше точек возможных ошибок.

> 3) процесс, нуждающийся в watchdog - дефектный и должен быть выкинут либо заменен.

Да, и космические частицы втыкающиеся в процессоры запретить. Даешь сферических коней в вакууме.

Извините, я не верю в should never happen. Хоть и делаю системы работающие без сбоев годами, но при достаточном количестве систем какая-нибудь странная фигня будет временами случаться. Если машины ее парируют сами без участия людей это хорошо и правильно.

> 4) ваша аналогия кривая, как сам системд.

А по моему - в самый раз. Для меня это ощущается как-то так. Хоть я и согласен что поцтер что-то слишком уж разогнался с фичами. Скажем всякие сети и timesync ну вот реально опциональны. ЧСХ их как раз и можно выпилить к чертям если оно не надо. У демьяна в последних вариантах вообще timesyncd отдельный пакет и можно альтернативы вкатить, хоть тот же openntpd или что там кому нравится.

Ответить | Правка | К родителю #120 | Наверх | Cообщить модератору

130. "Доступен консольный файловый менеджер nnn 4.0"  +1 +/
Сообщение от lockywolf (ok), 18-Апр-21, 11:01 
Я тут написал простенький обходчик файловой системы на Scheme Shell, а потом портировал его на Chibi. В целом, работает довольно быстро, даже при том, что я местами использую lset.

https://gitlab.com/Lockywolf/scsh-xattr-mindmap

Ответить | Правка | К родителю #99 | Наверх | Cообщить модератору

109. "Доступен консольный файловый менеджер nnn 4.0"  +1 +/
Сообщение от СеменСеменыч777 (?), 17-Апр-21, 22:56 
> В прошлый раз уже пришли к выводу,

_кто_ пришел к выводу ?
"я и два моих коллеги - опытные копипастеры со stackoverflow" ?

> что баш это в первую
> очередь про удобство (те же массивы незаменимы, хоть и жрут память),

как говорил Сталин "нэзамэнимых у нас нэт".
awk - не разжирел (в отличие от perl). gawk на пути к.

Ответить | Правка | К родителю #83 | Наверх | Cообщить модератору

111. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (83), 17-Апр-21, 23:01 
> _кто_ пришел к выводу ?

Тот, к кому обращались, не влезайте в чужие разговоры.

Ответить | Правка | Наверх | Cообщить модератору

112. "Доступен консольный файловый менеджер nnn 4.0"  +2 +/
Сообщение от СеменСеменыч777 (?), 17-Апр-21, 23:04 
> Тот, к кому обращались, не влезайте в чужие разговоры.

вы не модератор, чтобы указывать мне.

про якобы незаменимые массивы есть чо ?

Ответить | Правка | Наверх | Cообщить модератору

114. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (83), 17-Апр-21, 23:23 
Я думаю, все, кто пробовали заменять массивы строками (и в частности ассоциативные массивы строками), прекрасно понимают, что с эмуляцией массивов не так. Банально вопрос удобства и скорости. Кроме того, у баша есть интересные возможности в set и shopt, которые позволяют в значительной пере заменить полноценные скрипты на том же питоне. А так, читаемость конструкций со, скажем, <<<, значительно выше убогой лапши с пайпами.
Ответить | Правка | Наверх | Cообщить модератору

126. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от VINRARUS (ok), 18-Апр-21, 10:14 
про якобы незаменимые массивы есть чо ?
https://www.opennet.ru/openforum/vsluhforumID3/122620.html#153
Ответить | Правка | К родителю #112 | Наверх | Cообщить модератору

94. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от СеменСеменыч777 (?), 17-Апр-21, 22:24 
я не смог портировать этот однострочник на csh/tcsh. стыдно.
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

105. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (83), 17-Апр-21, 22:42 
> я не смог портировать этот однострочник на csh/tcsh. стыдно.

что-то вроде такого, я тоже охренел с ограниченности и неудобности

#!/bin/tcsh
set D = 1
while ($D < 1000000)
  set D = `expr $D + 1`
end

Ответить | Правка | Наверх | Cообщить модератору

58. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (55), 17-Апр-21, 17:18 
>я говорю, что их любимые шеллы СЛИШКОМ РАЗЖИРЕЛИ

Семёныч, command.com - фсё твое.

Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

67. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от СеменСеменыч777 (?), 17-Апр-21, 18:37 
> command.com

фу бхх, фу нхх.
4dos/4os2/4nt.

Ответить | Правка | Наверх | Cообщить модератору

86. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Михрютка (ok), 17-Апр-21, 22:01 
4bsd

4bsd забыл

Ответить | Правка | Наверх | Cообщить модератору

93. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от СеменСеменыч777 (?), 17-Апр-21, 22:22 
> 4bsd забыл

у вас недержание комментов или вы просто глупый человек ?

en.wikipedia.org/wiki/4DOS
en.wikipedia.org/wiki/4OS2
en.wikipedia.org/wiki/4NT_(shell)

Ответить | Правка | Наверх | Cообщить модератору

98. "Доступен консольный файловый менеджер nnn 4.0"  –2 +/
Сообщение от Аноним (98), 17-Апр-21, 22:31 
DOS/4GW?
Ответить | Правка | К родителю #67 | Наверх | Cообщить модератору

115. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Соня Мармеладова (?), 17-Апр-21, 23:38 
Причём здесь расширитель доса?
Ответить | Правка | Наверх | Cообщить модератору

143. "Доступен консольный файловый менеджер nnn 4.0"  +/
Сообщение от Аноним (-), 18-Апр-21, 14:26 
> Причём здесь расширитель доса?

Может ему 640 килобайтов мало. Мало ли.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру