Comments 106
Дополню glowingsword. Возможно изменили интервал снятия метрик с умолчательных 300 секунуд на 1? Может отлючили ротацию логов (по умолчанию они ротируются)?
Теплое vs очень-теплое.
Это разный утиль под разные цели. htop дает этакий сводный дашборд. Быстро зашел на сервер и посмотреть, покилял прямо там же ненужно, может кого-то поstrace-ил. atop хорошо показывает нагрузку на все подсистемы + пишет бинарные логи которые в случае проблем на сервере можно отсмотреть и проанализировать.
Или, даже, glances vs atop.
В графане смотришь на графики, видишь что что-то не то с системными метриками на сервере, идешь на сервер и смотришь исторический срез через atop. Htop так может?
bashtop — требует bash 4.4, а в centos 7 bash 4.2 только (4.4 только самому собирать — это неинтересно).
Я сидел долго на mc из-за сходства с Far, потому что на винде только Far. Привык к двухпанельным файловым менеджерам, но быстродействие и удобство nnn порадовало, поэтому это основной фм на linux.
Уже работает: far2l --tty
tty-шный fa2l был как минимум полгода назад. Туда еще по моей просьбе прикрутили поддержку ssh-agent. Но как-то вот прям полностью сидеть не получается. Использую попеременке с mc, и в основном для целей работы с sftp/scp.
А чем он лучше нормального mc
?
Только тем что он привычен вам по винде?
Просто я виндой стал пользоваться всего два с половиной года назад, когда ее купил под игры в VR, а до этого 20 лет пользовался *nix-like(сначала FreeBSD, потом GNU/Linux) и у меня привычки к виндовым вещам нет, вот и хочу понять может ли этот far2l предложить мне что-то или он нужен только тем кто под виндой к нему привык.
Главное в mc то, что он просто есть.
Ну то есть никаких серьезных аргументов в пользу этого поделия нет, просто ваши виндовые привычки и потому аргументы про «функциональней на порядок» без доказательств.
Ясно, спасибо за пояснения, я так и думал.
Шикарные встроенные макросы, возможность писать макросы как последовательность клавиш, так и на ЛУА.
Очень удобный встроенный редактор.
Хорошая удобная интеграция с командной строкой и панельками для написания скриптов (например выполнить скрипт с файлами выделенными в панели),
продвинутое многоуровневое user menu (в mc вроде один уровень, но могу ошибаться)
Хороший глобальный поиск и временная панель
Ну не знаю, если вы знакомы с FAR и mc на примерно одинаковом продвинутом уровне, я не понимаю что именно нужно пояснять.
Вдобавок FAR это все-таки гуишное приложение с консолью, и в gui он только выигрывает, например плагинов с просмотром картинок, mc чисто консольный.
Поэтому far2l КОНЕЧНО менее функционален, чем far for windows, но я думаю что он все равно будет более функциональным, чем mc
Вдобавок FAR это все-таки гуишное приложение с консолью, и в gui он только выигрывает, например плагинов с просмотром картинок, mc чисто консольный
far не имеет консоли, а просмотрщик картинок, как и либреофис для его файлов, как и все остальное, если я нахожусь в X11(или Wayland) у меня mc прекрасно вызывает.
Ну не знаю, если вы знакомы с FAR и mc на примерно одинаковом продвинутом уровне, я не понимаю что именно нужно пояснять.
Я же пояснил, что у меня нет виндового опыта и я не знаю что такого есть в фаре, что нужно его портировать с костылями в виде winelib. Мне было интересно.
Из ответа я вижу просто фаната который любит привычный ему софт и пытается оправдать использование этого софта при наличии более удобных альтернатив. Я так и думал, но все же в глубине души надеялся, что есть что-то что реально полезно. Ничего полезного нет, просто сидящим под виндой удобней юзать их софт. Мне так же удобней юзать нормальный, я вас понимаю. Мне под виндой тоже многих привычных по иксам фишек не хватает, просто потому что привычки формировались десятилетиями
far не имеет консоли,
Простите, я сижу под FAR+Conemu. Они оба друг с другом дружат и имеют предварительные настройки для интеграции, и я даже забываю что у них разные разработчики.
Я же пояснил, что у меня нет виндового опыта и я не знаю что такого есть в фаре, что нужно его портировать с костылями в виде winelib. Мне было интересно.
Простите, но если человек какое-то время работает с компом, он в любом случае набирает какой-то набор удобных ему инструментов и привычек.
Я работал с разными панельными менеджерами, начав еще до нортон коммандера, и FAR с третьей версии более чем хорош.
Был момент, когда мир перешел на UTF-8, а фар 1.0 сильно отставал, и я пытался найти ему замену. Это было мучительно, но вышел Far 3.0, который поборол все эти проблемы и сейчас все отлично.
Из ответа я вижу просто фаната который любит привычный ему софт и пытается оправдать использование этого софта при наличии более удобных альтернатив.
Ну давайте поговорим о фанатах привычного софта и более удобных альтернативах. Будет интересно послушать как вы будете объективно аргументировать свои предпочтения.
bat еще весьма удобна для чтения файлов в консоли.
нужно написать такую команду find:
$ find . -iname "*.md"
Неправильная команда-то. Одинарные кавычки нужны.
Вы правы, хотя это странно.
Ничего странного. Строки в двойных кавычках отличаются лишь тем, что в них интерполируются переменные и т.п.
https://stackoverflow.com/questions/6697753/difference-between-single-and-double-quotes-in-bash
Странно, что звёздочка не входит в "и т. п."
А почему странно? Wildcards (*,?) и brace expansion ({a,b,c}) влияют на число аргументов, т.е. они ближе к операторам, нежели к переменным.
А вообще вот они, кавычки, и правила с ними связанные:
https://www.gnu.org/software/bash/manual/html_node/Quoting.html
Даже если в текущей директории есть файл foo.md, а в поддиректории файл bar.md?
find ищет рекурсивно в директории и поддиректориях, так что найдёт оба этих файла.
Тому же htop уже 14 лет, ncdu примерно так же.
Может не совсем сюда, но просто полезная утилита: lnav (log navigator).
Позволяет смотреть логи (в том числе одновременно из разных файлов), подсвечивает ошибки или свои паттерны, понимает разные форматы (например, apache logs), умеет читать файлы в рeал-тайме (типа tail -f), скрывать ненужные строки (например debug сообщения) и кучу всего ещё.
Ставлю её на некоторые сервера, где надо много и часто смотреть логи; удобнее, чем cat и (е)grep.
Да, конечно. Как сторонник минимализма я стараюсь использовать и изучать то, что уже установлено и широко распространено. Думаю less покроет большинство моих кейсов использования lnav.
Но у lnav есть пара фишек, которые мне сильно помогают: более интуитивный (панель снизу, сообщения, автодополнение по tab), подсветка паттернов логов из коробки, форматирование json или xml, и sql-like язык для выборки логов. Мне это не очень часто нужно, но иногда сильно помогает ускорить процесс анализа.
Предлагаю попробовать peep
всячески рекомендую https://github.com/Wazzaps/jqed/ — для интерактивного составления запросов к jq
htop
показывает сильно меньше информации, чем top
, обратите внимание на заголовок.
htop
, определяют, что процессор сейчас сильно занят дисковыми операциями, например? Вот как это видно в top
(подчёркнуто):Собственно сразу видно, что процессор не ждёт завершения дисковых операций ибо wait I/O меньше 10-ки (да что там… меньше единицы ;-)). В
htop
же, как я ни крутил в настройках отображение инфы о процесоре максимум удалось добиться вот такого:что конечно-же никуда не годится в практической работе.
Собственно какие метрики показывает
top
:
- us — (User CPU time) время, затраченное на работу программ пользователей
- sy — (System CPU time) время, затраченное на работу процессов ядра
- ni — (Nice CPU time) время, затраченное на работу программ с измененным приоритетом
- id — (Iddle time)простой процессора
- wa — (iowait) время, затраченное на завершение ввода-вывода
- hi — (Hardware IRQ) время, затраченное на обработку hardware-прерываний
- si — (Software Interrupts) время, затраченное на работу обработку software-прерываний (network)
- st — (Steal Time) время, «украденное» гипервизором у этой виртуальной машины для других
задач (например работа другой виртуальной машины)
© Wikipedia
На самом деле такая нелюбовь к штатному
top
идёт от того что люди не умеют его готовить ну и от того что он менее эргономичен чем htop
, особенно в плане посылания процессам различнх сигналов, что особенно полезно разработчикам софта под *nix. Но вот в плане быстро посмотреть отчего это систему так «раскорячило» ему замену найти сложно (тем более он есть в каждом утюге). И то что htop
ей не является, это однозначно.lazygit — консольный git клиент
lazydocker — консольный docker клиент
thameera/vimv — vim rename
exa — замена ls
tanrax/terminal-AdvancedNewFile — аналог touch, но умеет создавать папки и умеет в патерны.
Например, du не обязан быть интерактивным, зато его можно использовать в скриптах.
Сравнивать jq и grep/sed совершенно некорректно. Они для разных задач. jq не распарсит вам ничего, кроме JSON, зато его распарсят корректно. Но зачем их сравнивать?
tldr vs man — в man работает поиск, фильтр, навигация.
htop/top — ну одинаковая там информация. Нюансы не в счет.
Какие-то новые вещи в командной строке появляться могут, но они не являются альтернативной, они являются расширением шелла, как и все что было прежде.
А вот альтернативой в настоящее время становятся интеграция с разными графанами/кибанами, webadmin и так далее. Но под капотом большинство параметров собирается теми же самими утилитами или питоном.
Если есть реальная задача мониторинга, то ни top ни htop тут не советчики, они для посмотреть здесь и сейчас. А для наблюдения нужно что-то из мониторинга — нагиос, прометей, ммонит, в общем что-то с историческими графиками.
По современному: prometheus + grafana + elastik search + kafka ))
вот это да, понимаю, модно и молодежно )
А у вас — просто альтеративы: сделать тоже, но другим макаром.
По поводу производительности труда: bash решает… чтобы не писать тищу раз в сутки одно и тоже — делаешь простой скрипт под себя, и вуаля, там хоть мейл отправляй при некоторых случаях…
кста, тотже netstat можно частично заменить iotop… да и вообще, альтератив полно…
По современному: prometheus + grafana + elastik search + kafka ))
Интересно было бы посмотреть на эти инструменты в разрезе CLI, ведь речь в статье именно про инструменты командной строки. Это вопрос без сарказма :) я где-то встречал инструмент CLI, который визуализирует в терминале данные из Elasticsearch, но когда целенаправленно поискал его через какое-то время, нагуглить не удалось. И было бы полезно иметь тул, который умеет рисовать в терминале метрики из Prometheus.
Пользуйтесь ls/cd/pushd/popd/du/top/grep/man/find/less/vim
По началу будет тяжеловато. Но когда вы находитесь на изолированном/сломанном сервере. Каждая минута на счету, а вы привыкли к "хипстерским" утилиткам, которых, внезапно, не оказалось на сервере. И вместо того чтобы диагностировать и решать проблему вы будете учиться пользоваться тем, что есть.
man из списка удалить, манов может не быть и команда может не стоять.
Не vim, а vi нужно знать, опять же потому, что vim опционален, а vi входит в стандарт.
И знание стандартных команд не означает, что не нужно использовать более удобных инструментов. Да, оказываясь на каком-нибудь сервере клиента поставленном при царе Горохе левой ногой пьяного попингуя тебе нужно знание стандартных утилит. Но находясь на своих серверах и серверах постоянных клиентов ты можешь использовать то что удобно тебе.
Я использую pydf
вместо df
, htop
вместо top
и так далее, они мной ставятся при первом же заходе на сервер. Но я оказавшись на чужом сервере так же спокойно использую стандартные утилиты. Это вопрос стандарт vs удобство.
opensource.com/article/20/6/modern-linux-command-line-tools
tldr rrg
No tldr entry for rrg
$ fuck
tldr rg [enter/↑/↓/ctrl+c]
tldr показывает справку даже для программ, которых нет в системе o_O
Хотел предложить ещё HTTPie, но не прижился, так и использую wget&curl.
Думается мне что замена grep это все же rg, а не jq.
5 современных альтернатив старым инструментам командной строки Linux