Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam

Топ прошлой недели

  • Oskanov Oskanov 8 постов
  • alekseyJHL alekseyJHL 6 постов
  • XpyMy XpyMy 1 пост
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Новости Пикабу Помощь Кодекс Пикабу Реклама О компании
Команда Пикабу Награды Контакты О проекте Зал славы
Промокоды Скидки Работа Курсы Блоги
Купоны Biggeek Купоны AliExpress Купоны М.Видео Купоны YandexTravel Купоны Lamoda
Мобильное приложение

Командная оболочка bash

С этим тегом используют

Linux IT Программирование Все
81 пост сначала свежее
1
ilopX
5 лет назад

Задержан настоятель обители IT сообщества, воспитавший 70 приемных Senior и TeamLead developers⁠⁠

Черкассы. 11 октября 2019. VECH.CK.UA - Задержаный настоятель обители IT сообщества Черкасской области протоиерей Гавриил, воспитывающий около 70 приемных программистов, сообщили местные СМИ.


По их информации, священник находился за барной стойкой, пил паленый кахети и рассказывал об области видимости переменных в #JS.


Напомним что в сентябре 2015 года Гавриил Стремский был отстранен от должности настоятеля обители из-за составления коммитов в пьяном виде. Тогда полицейские заметили нелицензированную программу "Sourcetree" на ноутбуке священника. Когда наставника попросили купить лицензию и использовать #bash, он уехал на большой скорости. Полицейские начали преследование и задержали машину на территории церкви "Дом Евангелия". Стремский оказал сопротивление, и против него пришлось применить силу. По данным полиции, он явно был пьян и отказался использовать командную строку для создания коммитов.

Задержан настоятель обители IT сообщества, воспитавший 70 приемных Senior и TeamLead developers Javascript, Командная оболочка bash, Git
Показать полностью 1
[моё] Javascript Командная оболочка bash Git
1
5
wbln
wbln
6 лет назад

Скрипты сборки (DevOps)⁠⁠

Потребовалось на днях, для не большой команды разработки, поднять окружение.

В качестве основы, были взяты бесплатные версии приложений от JetBrains: Hub UpSource YouTrack TeamCity (+ 3 билд агента). Так же в сборку запилил Portainer для манипуляций/мониторинга состояния контейнеров.

в качестве виртуалки - VirtualBox оракловыый + Vagrant

на виртуалке стоит арч + докер и докер-компоуз (не юзается по определенным причинам, а выпилить забыл)

В общем, если кому понадобится - выложил на гитхаб, пользуйтесь

Коментарии приветствуются, правки готов вносить.

[моё] DevOps Командная оболочка bash Virtualbox Docker Текст
3
1
DELETED
6 лет назад

Mikrotik API - будь оно не ладно⁠⁠

Всем доброй ночи.


Возможно найдутся знатоки, подскажут.


Я пытаюсь на bash реализовать частично API Mikrotik (https://wiki.mikrotik.com/wiki/Manual:API), но чувствую, что где-то нафакапил. Потрачено около 8 часов. Вопрос принципиальный.


Приведу часть написанного:

#!/usr/bin/bash


exec 3<>/dev/tcp/172.16.55.1/8728

passwd='password'


chr () {

printf \\$(printf %o $1)

}


sread () {

response=`timeout 1 cat <&3 | tr -d '\0' `

challenge=`echo -ne $response | gawk -F"=" '{ print $3 }' | xxd -r -p`

echo $challenge

zero=`chr 0`

md=`echo -ne $zero$passwd$challenge | md5sum | gawk '{ print $1 }'`

#cmd='/login=name=admin=response=00'$md

cmd1='/login\n'

cmd2='=name=admin\n'

cmd3='=response=00'$md'\n'

}


wLogin () {

sread

#wWord $cmd

wWord $cmd1

wWord $cmd2

wWord $cmd3

}

sclose () {

exec 3<&-

exec 3>&-

}


len () {

echo -ne ${#1}

}


wWord () {

echo $1

wLen $1

echo -ne $1 >&3

wLen

}


wLen () {

echo `len $1`

chr `len $1` >&3

}


Используется так:

source api.sh

wWord /login

sread

wLogin


получаю: !fatal.no.login.in (смотрю пока tcpdump'ом)


Понимаю, что замысел бессмысленный, но уже хочется просто понять, ЧЯДНТ?!

Показать полностью
[моё] Mikrotik Командная оболочка bash Scripting Текст
10
netko
netko
6 лет назад
GNU/Linux

Скрипт⁠⁠

#!/bin/bash -x

# Скрипт запускается по нажатию горячих клавиш и открывает файл с названием заголовка активного окна из своей директории.




bdir="$HOME/scripts/context_notes"

#notify-send "$(xprop -id $(xdotool getactivewindow)|grep _NET_STARTUP)" -t 9000

cd $bdir


view=""

if [ -z "$1" ]; then

if [ ! "$1" == "view" ]; then

view="view"

fi

wid="$(xdotool getactivewindow)"

else


wid="$1"

echo $wid

fi


#notify-send "$wid" -t 2000


pid="$(xprop -id $wid |grep "_NET_WM_PID(CARDINAL)" |grep -o "[0-9]*")"


#title="$(xwininfo -id $wid |grep xwininfo | grep -o "\".*\"" )"

#title="${title//\"/}" #удалить кавычки

comm="$(ps -q $pid -o comm=)"

args="$(ps -q $pid -o args=)"


#notify-send "$args" -t 9000


#notify-send "$title w:$wid pid:$pid comm:$comm" -t 9000


if [ -e "$comm" ]; then

echo "Ok";

else

mkdir "$comm"

fi

cd $comm


if [ "$comm" = "firefox" ]; then

s="$(xwininfo -id $wid |grep xwininfo | grep xwininfo | grep -o "\".*\*\/;\*")"

title="${s:1:(-4)}"

url="$(xwininfo -id $wid |grep xwininfo | grep -o "\*\/;\*.*\ Mozilla" | cut -d" " -f 2)"

# notify-send $url -t 9000

elif [ "$comm" = "zathura" ]; then

title="$(xwininfo -id $wid |grep xwininfo | sed -e "s/[^\"]*\"\([^[]*\).*/\1/" )"

url="$(xwininfo -id $wid| grep xwininfo | sed -e "s/.*\[\(.*\)\]\"/\1/")"

notify-send "title:$title url:$url" -t 9000


elif [ "$comm" = "viewnior" ]; then

title="$(xwininfo -id $wid |grep xwininfo | sed -e "s/[^\"]*\"\([^\"]*\)\"/\1/" |rev | sed -e "s/%[0-9]*\ -\ [0-9]*\/[0-9]*\ -\ \(.*\)/\1/" |rev )"

url="$(xwininfo -id $wid |grep xwininfo | sed -e "s/[^\"]*\"\([^\"]*\)\"/\1/" |rev | sed -e "s/\(%[0-9]*\ -\ [0-9]*\/[0-9]*\)\ -\ .*/\1/" |rev )"

#notify-send "title:$title url:$url" -t 9000


else

title="$(xwininfo -id $wid |grep xwininfo | grep -o "\".*\"" )"

title="${title//\"/}" #удалить кавычки

url=""

fi


cur="command:\"$args\" url:\"$url\""

#Нужно проверить последнюю запись и если изменений нет, то не добавлять.

last="$(cat "$title" |grep "command")"


if [ "$view" = "view" ]; then


notify-send "$(cat "$title")" -t 10000


else


touch "$title"

if [ "$last" == "$cur" ]; then

notify-send "Равно" -t 9000

echo

else

echo "$cur" >> "$title"

fi

gvim --role context_notes -geometry 58x21+792-90 "$title"


fi


#cur="pid:$pid wid:$wid url:$url"


#notify-send "$(lsof -w -p $pid |grep home)" -t 9000

#notify-send "$(ps -q $pid -o comm=)" -t 9000

#Заголовок, win_id, нужно бы имя файла


#Структура -- pdir / имя приложения / заголовок=имя файла, дописать в файл всю информацию и открыть её в gvim, в плавающем окнежен

# disown


+++++++++++++++++++++++

Если прилепить поиск grep+dmenu будет совсем кошаладно
на фарефокс нужен плагин, шоб url в title /выводил
разделитель */;* или типа того. zathura eтоже и страницы правится в config/

Показать полностью
[моё] Linux Командная оболочка bash Длиннопост Текст Скрипт
16
VanillaSky16
7 лет назад
Лига Сисадминов

Анализ log фаила⁠⁠

Помогите написать скрипт, пожалуйста


Скрипт, формирующий сводную статистику на основе файла логов веб-сервера, который соответствует следующим требованиям:

- Скрипт реализован на bash.

- Код скрипта соответствует лучшим практикам программирования на sh/bash, которые позволяют писать понятный и поддерживаемый код, несмотря на некую архаичность этого языка

- Скрипт принимает на вход единственный аргумент, соответствующий пути к входному файлу с логом веб-сервера

- Скрипт анализирует содержимое лог-файла таким образом, чтобы собрать статистику по типам запросов и соответствующим кодам ответов веб-сервера

- Скрипт выводит собранную статистику в следующем формате на stdout:

{{ REQUEST_TYPE_1 }}:

{{ CODE_1 }}: {{ COUNT_CODE_1 }}

{{ CODE_2 }}: {{ COUNT_CODE_2 }}

{{ CODE_3 }}: {{ COUNT_CODE_3 }}

{{ REQUEST_TYPE_2 }}:

{{ CODE_1 }}: {{ COUNT_CODE_1 }}

{{ CODE_2 }}: {{ COUNT_CODE_2 }}

{{ CODE_3 }}: {{ COUNT_CODE_3 }}

где:

REQUEST_TYPE_X — это тип запроса, например GET, HEAD или OPTIONS

CODE_X — это код ответа, который был получен для данного типа запроса один или более раз. Например, 504 или 404.

COUNT_CODE_X — количество ответов с данным кодом.

Показать полностью
Командная оболочка bash Скрипт Без рейтинга Текст
25
6
zubr0812
7 лет назад

Своя сборка убунту в один клик⁠⁠

Приветствую всех  кто интересуется Linux, недавно у меня появилась срочная необходимость собрать свою сборку убунту , о том как я это делал я хочу написать ниже:

Что первым делает адекватный человек без аналогичного опыта когда ему ставят такую задачу ? правильно! идет в гугл) в ходе гугления я был удивлен тем фактом что для того что бы сделать то что я хочу нужно:


- скачать "файловую систему" убунту

- в режиме chroot (sudo chroot [ каталог с файловой системой ]) выполнить нужную настройку

- cкачать файлик vmlinuz он же ядро
- и естественно  скачать initrd она же временная файловая система (если быть точным Initial RAM Disk)


Дальше , после нескольких манипуляций а именно сжатия всего в squashfs и упаковки в iso-шник я получил то что нужно.
Ну вот , я заметил кучу багов и того что я не доделал , и в течении недели приходилось это все пересобирать до посидения, в итоге мной было принято решения написать баш скрипт по автоматизации всего и вся, работает на ура,сам скрипт ниже)


sudo apt-get install git && git clone https://github.com/GIThunte/build-ubuntu.git


Использование:


Первое на что хотелось бы обратить внимание это системные требования:


Желательно ubuntu 16.04

и установленные приложения

debootstrap

syslinux

isolinux

squashfs-tools

genisoimage

rsync

(Установить их можно так - sudo apt-get install debootstrap syslinux isolinux squashfs-tools genisoimage rsync -y )


Ну и самый важный момент , вам зарание нужно скачать vmlinuz и initrd а так же кинуть их на какой то свой мега ftp, все это дело делается просто, ниже мануал:



1 - sudo apt-get install vsftpd

2 - открываем любым редактором файл /etc/vsftpd.conf , ищем там строку anonymous_enable=NO и меняем NO на YES

3 - перезапускаем сервис sudo service vsftpd restart

4 - идем по этой ссылке : https://drive.google.com/file/d/1m2-G9hVsyO_abBNZxHGAsCZTfYt... и скачиваем архив

5 - дальше выполняем распаковку этих файлов в корень ftp ( у меня это /srv/ftp/ )


если вы сделалали на рабочей системе все правильно , то после перехода по адресу ftp://localhost/ вы должны увидеть 2 файла котрые вы распаковали в каталог ftp


после этого , вам нужно войти в каталог со скриптом и сделать ls увидеть вы должны примерно такой список файлов :


base_img.conf

base_img.sh

FILES

install.sh

README.md

start.sh


вам нужны только два файла base_img.conf и install.sh


base_img.conf это скажем так конфиг скрипта , все что возможно изменить , меняется там


install.sh это очень важный файл , в нем языком bash описывается все что вы хотите изменить в самом образе , например если вы хотите добавить в вашу сборку редактор vim то в конце напишите :


sudo apt-get install vim


(крч это обычный баш скрипт что выполняется в chroot-e)


Последним шагом будет редактирование конфигурационного файла base_img.conf

просто найдите там строки:


INITRD_URL="ftp://zos-ftp.com/initrd.gz"

VMLINUZ_URL="ftp://zos-ftp.com/vmlinuz"


и zos-ftp.com замените на localhost ( крч кто понимает это просто переменные с адресом откуда wget будет тянуть vmlinuz и initrd ) это может быть и прямая ссылка на эти файлы в файлообменнике


так же можете отредактировать файл isolinux.cfg в каталоге FILES


дальше просто пишем :


sudo bash start.sh


спустя некоторое время , в каталоге /srv/BUILD будет лежать ваш iso файл убунту


так же можете описать примерно так :


sudo bash http://archive.ubuntu.com/ubuntu/ /home/ваше имя пользователя/MYUBUNTU


и в каталоге


/home/ваше имя пользователя/MYUBUNTU будет ваше iso


PS: Все это писал для себя,если что то вам не нравится в коде вы можете или переписать его или не использовать=)


Ссылке по теме:

https://willhaley.com/blog/create-a-custom-debian-stretch-li...

Показать полностью
[моё] Build Ubuntu Командная оболочка bash Zos Настройка Linux Длиннопост Текст
26
DELETED
7 лет назад

Помощь по написанию скрипта Bash⁠⁠

#!/bin/bash

echo "The user logged in is:"

pass=12345

echo -en "Enter the password:"

read rightpass

if [[$pass -eq $rightpass]];

then

echo "Hello, Mr.Admin"

else

echo "Sorry, try again"

fi

echo "1 - time, 2 - system information, 3 - list of active users"

echo -en "Choose the next step:"

read choose

time= date +"%T"

info= whoami

infousers= who|cut -d ' ' -f1 |sort|uniq

if [[$choose -eq 1]];

then

echo "Current time :\n $time \n"

elif [[$choose -eq 2]];

then

echo "$info"

elif [[$choose -eq 3]];

then

echo "$infousers"

fi


Не знаю почему, но все if не работают и почему-то в консоле также высвечиваються переменные time, info, infousers (хотя не должны). Я думаю это опять таки из-за ифов. Спасибо за помощь!

P.S. И как сделать break после неправильного пароля в первом if

Показать полностью
[моё] Командная оболочка bash Linux Консоли Терминал Программист Программирование Текст
25
88
Guardo
7 лет назад
GNU/Linux

В Магазине Windows опубликовано два дистрибутива SUSE Linux⁠⁠

Ещё несколько лет назад за такой заголовок вполне можно было получить путёвку в санаторий для душевнобольных, но в мире сегодняшней Microsoft он звучит вполне нормально: просто для Windows 10 и WSL (Bash) доступны новые дистрибутивы Linux, обещанные некоторое время назад.
Напомню, впервые энтузиасты запустили SUSE в среде WSL ещё в январе этого года, в мае разработчики Windows 10 официально сообщили о намерении расширить список поддерживаемых дистрибутивов, включив в него кроме Ubuntu ещё и SUSE, и Fedora. В конечном счёте разработчики WSL планируют сделать эту платформу независимой от типа дистрибутива вообще.

В Магазине Windows опубликовано два дистрибутива SUSE Linux Windows, Windows 10, Linux, Linux и Windows, Командная оболочка bash, Microsoft, Операционная система

В каталоге Магазина Windows сейчас представлено два дистрибутива SUSE: openSUSE Leap 42, предназначенный широкому кругу пользователей, и созданный на его основе, «коммерческий» SUSE Linux Enterprise Server 12. Распространяются они бесплатно, для использования необходимо включить WSL (Bash).

Windows Windows 10 Linux Linux и Windows Командная оболочка bash Microsoft Операционная система
41
Посты не найдены
О Нас
О Пикабу
Контакты
Реклама
Сообщить об ошибке
Сообщить о нарушении законодательства
Отзывы и предложения
Новости Пикабу
RSS
Информация
Помощь
Кодекс Пикабу
Награды
Команда Пикабу
Бан-лист
Конфиденциальность
Правила соцсети
О рекомендациях
Наши проекты
Блоги
Работа
Промокоды
Игры
Скидки
Курсы
Зал славы
Mobile
Мобильное приложение
Партнёры
Промокоды Biggeek
Промокоды Маркет Деливери
Промокоды Яндекс Путешествия
Промокоды М.Видео
Промокоды в Ленте Онлайн
Промокоды Тефаль
Промокоды Сбермаркет
Промокоды Спортмастер
Постила
Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии