Обновить

Администрирование

Сначала показывать
Порог рейтинга

Привет, все знают как прочитать содержимое файла в линукс терминале(?), для этого используется cat:

$ cat file
one
two
three

Но иногда возникает необходимость прочитать файл с конца, задом наперед. Как это сделать? Tac!

$ tac file
three
two
one

Для тех кто в танке tac это cat наоборот.

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 6: ↑6 и ↓0+7
Комментарии0

Привет! Подкрутил немного анимацию spinner'а, теперь выглядит так:

бынь-бынь
бынь-бынь

Spinner - это небольшой скриптик чтобы заполнить пустоту экранного пространства во время работы какого-нибудь долгого процасса, не выводящего ничего. Работает как-то так:

$ ./spinner sleep 5

Please wait [0:0:3] (* )  ( *)

Ну и оно там вот так пульсирует, быньк-быньк)

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 10: ↑10 и ↓0+15
Комментарии0

Привет, часто в скриптах встречаю бесполезное использование кавычек, вот такое вот:

var_b="$var_a"
var_c="$(...)"

Понятно с какой целью это делается, типа вдруг дам пробелы и оно сломается, давайте посмотрим сломается или нет:

$ echo $var_a
1 2

$ var_b=$var_a
$ echo $var_b
1 2

$ var_c=$(echo 3 4)
$ echo $var_c
3 4

Вроде не сломалось и без кавычек все прекрасно уместилось в переменные.
Кавычки нужны только для "склеивания" данных или переменных:

$ var_a="1 2"
$ echo $var_a
1 2

#а без кавычек:
$ var_a=1 2
2: команда не найдена

#и с переменными:
var_a="$var_b $var_c"

#без кавычек:
$ var_a=$var_b $var_c
3: команда не найдена

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии4

Чёрная пятница 2024 в Облаке Рег.ру

Начинаем Чёрную пятницу и дарим бонусные 500 рублей на облачный счёт Рег.ру при пополнении баланса от 500 рублей. Успейте воспользоваться бонусом до 2 декабря!

Как получить бонус:

  1. Создайте учётную запись или войдите в уже существующую в личном кабинете Облака Рег.ру;

  2. Активируйте промокод по ссылке — в ЛК отобразится подтверждение успешной активации;

  3. Внесите на баланс сумму от 500 рублей в период действия акции;

  4. Дополнительные 500 рублей автоматически зачислятся на ваш облачный счёт.

Есть способ проще: при заказе услуги просто введите промокод BLACKFRIDAY2024 в соответствующее поле. 

500 рублей — это много или мало?

Рассказываем, на какие облачные услуги можно потратить бонусные рубли. Спойлер: получается выгодно. 

500 рублей в Облаке:

  • 1 месяц работы Производительного сервера (базовая конфигурация)

  • 2 недели работы кластера Базы Данных

  • 5 часов работы сервера с GPU

1000 рублей в Облаке:

  • 2 месяца работы Производительного сервера (базовая конфигурация)

  • 1 месяц работы кластера Базы Данных

  • 10 часов работы сервера с GPU

  • 1 месяц работы Высокочастотного сервера

  • 1 неделя работы кластера Kubernetes

Подробные условия акции — по ссылке, а протестировать и заказать облачные услуги Рег.ру можно на сайте

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Пятница, вечер, а я все продолжаю тыкать свой kui в ноды кубернетиса.

Node pods
Node pods

Натыкал такое, добавил две новые команды: Node pods и Top node pods. Первая позволяет посмотреть все поды ноды. А вторая сделать топ поды ноды.

И если поды ноды kubectl умеет показывать из коробки, как-то так:

kubectl get po -A --field-selector spec.nodeName=<node_name>

То с топами подов нодов пришлось немного повозиться, kubectl не может сам сделать топ поды ноды, говорит такое:

kubectl top po -A --field-selector spec.nodeName=<node_name>
Error from server (BadRequest): "spec.nodeName" is not a known field selector: only "metadata.name", "metadata.namespace"

Пришлось ему немного помочь, сначала я запомнил поды ноды в переменную np

np=$(
   kubectl get po -A --field-selector spec.nodeName=<node_name> | \
   awk '{print $2}'
)

Потом сделал топ всех подов и грепнул поды ноды

kubectl top po -A | grep -F "$np"

И еще там были сопутствующие изменения и вот это вот все.

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 4: ↑3 и ↓1+5
Комментарии0

Привет, снова я со своим kui'ем!)

top nodes
top nodes

Позанимался немного с нодами и подумал что удобно было бы выбирать ноды из вывода kubectl top no, добавил это. Команда (top) доступна на первом шаге (выбор кластера) и через "быстрые команды".

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 3: ↑2 и ↓1+3
Комментарии2

Привет, небольшой апдейт для kui

delete cronjob
delete cronjob

Добавил команду удаления для кронжобов.

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии0

Глаза превращаются в...

info-bar
info-bar

Использую такую штуку в терминале info-bar о которой я писал тут, инфо бар показывает git status, если $PWD содержит папку .git. Сегодня занимался с репами, крутил вертел по разному, в какой-то момент вкладка терминала зафризилфсь. Оказалось что info-bar плохо переносит большое количество информации от git status

$ git status -sb | wc -l
9451

Пришлось ограничить вывод 50 строками, теперь так:

git_sts_depth=50
...
git -c color.ui=always status -sb | head -$git_sts_depth

Заодно смердил в мастер новую версию в которой глаза заменены на, эм, ну увидите)

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии3

Наткнулся на такой вопрос на SO Как передать строку из функции в переменную? В баше переменные по умолчанию глобальные, просто используйте этот факт:

fun1(){
  var1=$1
}

$ fun1 test
$ echo $var1
test

Но если сильно зудит можно попробовать что-то типа такого:

fun2(){
    local var_name=$1; shift 1
    printf -v $var_name '%s' "$@"
}

$ fun2 v2 some data
$ echo $v2
somedata

Или используя read вместо printf:

fun3(){
    local var_name=$1; shift 1
    read $var_name <<< "$@"
}

$ fun3 v3 some data
$ echo $v3
some data

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Зачем я перевернул календарь?

Песня "3-е сентября" стала знаковым культурно-социальным явлением, на юбилей песни решил добавить в piu-piu знаменитый куплет целиком. Пришлось немного повозиться c переделкой но в итоге получилось добавить новый функционал не сломав старый. Теперь текст для рекламных самолетов можно задать как переменной так и массивом. Каждый следующий самолет будет выводить новую строку текста из массива по кругу.
Я календарь переверну...

Творите, выдумывайте, пробуйте)

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Мониторинг в терминале?

Буквально за 15 минут собрал демку для просмотра алертов tenis'а с помощью bashui.
Я использовал "быструю" функцию для создания меню (таблиц). Подробней про эту функцию можно почитать тут. Кнопки бутафорские просто для иллюстрации)

Творите, выдумывайте, пробуйте!)

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии2

С Днём!)

piu-piu
piu-piu

Вперёд Сисьадмины! Мир сам себя не спасёт piu-piu!

Теги:
Всего голосов 4: ↑4 и ↓0+6
Комментарии0
12 ...
16