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

Котолэнд: блок пазл

Головоломки, Казуальные, 2D

Играть

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

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

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

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

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

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

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

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

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

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

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud⁠⁠

Для чего впн писать не буду, об этом уже везде и много написано и скорее всего спето.


Для чего может пригодится NextCloud:
1. Резервное копирование и онлайн доступ к важным файлам
2. Простой и быстрый способ поделиться каким-либо файлом или фото
3. Совместная работа над документами
4. Личный сервер для онлайн видео конференций
5. Чат
6. И еще многое другое о чем можно почитать на сайте nextcloud

Что нам понадобится:
1. Чистый виртуальный сервер с минимум 2Gb оперативной памяти и установленной на нем ОС Ubuntu22
2. Доменное имя
3. Немного времени что бы подключиться к серверу и выполнить пару команд

Пункт 1

Если сервер есть то хорошо, приготовьте логин и пароль для доступа, если сервера нет то его нужно арендовать у какого-либо хостинг провайдера, здесь на пикабу довольно много рекомендаций. Найдите IP, логин и пароль для доступа к серверу в панели управления или в письме которое получили при покупке.

Пункт 2

Как получить доменное имя бесплатно я рассказывал в своей предыдущей статье, если коротко то
- идем на сайт duckdns.org
- авторизуемся/регистрируемся
- добавляем домен и закрепляем за ним IP вашего сервера.

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

Пункт 3

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

1. Скачиваем скрипт установки, даем ему права на исполнение и запускаем

wget https://github.com/mozaroc/bash-hooks/raw/main/nextcloud.sh
chmod +x nextcloud.sh
./nextcloud.sh

Выполняется скрипт примерно 4-5 пять минут и закончится все должно следующей картинкой

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

Что сделает скрипт:
- Установит и настроит веб сервер caddy для реверспроксирования к мастерконтейнеру nextcloud и его рабочим контейнерам, так же будет выполнено реверспроксирование к WGDashboard, а так же для автоматические получения и продления SSL сертификатов для корректной работы Nextcloud
- Установит и настроит сервер впн WireGuard
- Установит WGDashboard для управления впн подключениями
- Установит docker
- Скачает и запустит контейнеры с nextcloud.

Что бы открыть панель управления VPN пройдите по адресу
https://ВАШ-ДОМЕН.duckdns.org:10086
Как создавать и управлять подключениями VPN я рассказывал в своей первой статье

Продолжаем настройку nextcloud из веб интерфейса

1.Заходим по адресу:
https://ВАШ-ДОМЕН.duckdns.org:8443
Не забываем указывать https и порт, автоматического перенаправления для контейнера установщика к сожалению нет(но есть для уже работащего Nextcloud)
Первый вход может быть немного с задержкой, т.к. вебсерверу нужно время для получения валидного SSL сертификата.

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

2. Копируем парольную фразу целиком и где-нибудь сохраняем, просто на всякий случай и нажимаем кнопку Open Nextcloud AIO login

3. Авторизуемся с этой парольной фразой

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

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

4. Далее вводим домен на котором работает Nextcloud

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

5. Следующую страницу сразу промотайте внизу и введите временную зону в которой хотите что бы работал ваш сервер, для Москвы это Europe/Moscow

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

6. Далее загрузится та же страница на которой можно выбрать какие дополнительные модули нужно установить, а так же какую версию nextcloud нужно поставить
Здесь распишу подробнее, каждый дополнительный модуль требует дополнительно 1Gb оперативной памяти, и не все модули одинаково полезны.
- Антивирус CalmAV, штука полезная, но антивирусы есть везде и если вы будете пользоваться сервером с ограниченным кругом лиц и не давать загружать на него файлы откуда попало то я думаю без него можно обойтись, т.к. нагружать он будет не только память, но и CPU, в результате чего комфорт от использования сервера пропадет начисто
- Fulltextsearch для небольшого сервера так же не особо нужен, искать во всех файлах разом я думаю тоже не особо пригодится как и запись разговоров в видеоконференциях, собственно разработчики так и считают потому что действительно нужные модули отмечены а не нужные нет. По умолчанию.

Так же я не рекоменду ставить галочку для установки последней версии Nextcloud, как показывает практика предпоследняя версия любого софта обычно стабильнее.

Нажимаем Download and start containers и ждем окончания установки

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка
Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

7. Установка занимает 5-10 минут, после того как все установится и запустится, вы увидите следующее, нужно будет скопировать и сохранить пароль главного администратора и можно заходить и начинать пользоваться.

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

Сервер Nextcloud в редакции All-in-One установлен и готов к работе

Вводим логин admin и пароль который получили на предыдущем шаге и заходим

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

В левом верхнем меню вы получите доступ к файлам, фото, конференциям, задачам, заметкам и т.д.

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

В правом верхнем меню, под иконкой пользователя к основным параметрам сервера и управлению пользователями

Прокачиваем свой VPS для впн по другому или добавляем онлайн хранилище файлов на базе NextCloud Linux, Гайд, Nextcloud, Wireguard, Командная оболочка bash, Длиннопост, Реферальная ссылка

Синхронизировать ваши файлы можно установив официальные приложения, скачать их можно на официальном сайте для ПК, а приложеня для телефона доступно в плеймаркете и аппсторе по поиску nextcloud, после установки в них нужно ввести только адрес вашего сервера, логин и пароль.

Так же для nextcloud есть куча модулей и дополнений для различных потребностей, все их можно увидеть в официальном репозитории

Вот собственно и все, спасибо за внимание.

Спасибо за установочный скрипт и инструкцию вы можете сказать приобретя сервер по моей реферальной ссылке у провайдера Veesp так же есть промокод на скидку 5% 8ZT5G6NNWKSE

Спасибо за внимание

Показать полностью 12
Linux Гайд Nextcloud Wireguard Командная оболочка bash Длиннопост Реферальная ссылка
4
11
ChooChooLoco
ChooChooLoco
1 год назад

Git хук для запуска тестов⁠⁠

Есть у меня такой pre-push хук - автоматом прогоняет тесты локально, через maven. Подключается по необходимости через отдельные git конфиги для проектов.

Git хук для запуска тестов IT, Командная оболочка bash, Java, Программирование

Стащил его, судя по всему, отсюда: https://gist.github.com/arnobroekhof/9454645. Потом допиливал немного – чтобы он с многомодульными проектами работал корректно. Может, ещё что-то по мелочи причёсывал.

И он отлично работает (разве что можно через sed попробовать результаты по всем модулям агрегировать).

Но вот проблема – на текущем проекте везде gradle, а под него я что-то не могу найти похожего простого решения

Есть ли оно?

IT Командная оболочка bash Java Программирование
25
sinloehal
2 года назад
Спроси Пикабу

Регулярное выражение⁠⁠

Как выбрать "АБВ" (вместе с пробелами если они есть) используя только одно регулярное выражение, запуская ее отдельно по строкам:

  1. "АБВ". Если будет строка "гггАБВ" или "АБВггг" или "гггАБВггг", то строка не должна выбираться.

  2. "ггг АБВ"

  3. "АБВ ггг"

  4. "ггг АБВ ггг"

В 1м только сама строка без пробелов и без любых других символов. Т.е. если вокруг АБВ есть другие символы кроме пробелов то ее выбирать не надо.

В 2м пробел спереди.

в 3м пробел сзади.

в 4м пробел с обеих сторон.

Regex Linux Shell Командная оболочка bash Терминал Программирование IT Хакеры Текст
21
431
Noble.Trash
2 года назад
GNU/Linux

Ответ на пост «Отправить в Телеграм. Linux»⁠⁠1

С телегой вообще все просто.
в общем виде это выглядит так:

curl --header 'Content-Type: application/json' --request 'POST' --data '{\"chat_id\":\"111111111\",\"text\":\"тут вводите любой нужный вам текст\"}' \"https
://api.telegram.org/
bot2222222222:AGGX_2SN8SYPYW7x_o9xcdRPyOZfoQtqTS8/
sendMessage\"

(пообрезайте переносы строк, потому иначе редактор пикабу обрезает всю ссылку curl. все должно быть в одну строку)

сначала регаете бота:
Для этого добавляем себе в контакты @botfather и пишем ему сначала /start, потом /newbot.
Там задаем боту имя. Например @lichniy_bot
Теперь нужно добавить в свой список контактов созданного бота. Для этого найдите его по имени.
Вписываете в команду слово bot и дальше token бота. Пишется все в одно слово.
потом узнаете свой ID. Чтобы его узнать, добавьте бота @my_id_bot и напишите ему /start
данное значение вписываете в поле chat_id

Profit, вы великолепны. )

можете вписывать в любой баш скрипт - меня так мои бекапы информируют о результате.

Если ссылки можно, то напишите в коммент - кину ссылку откуда я это брал - там с картинками пояснения.

Показать полностью
Linux Telegram IT Командная оболочка bash Ответ на пост Текст
63
64
ChooChooLoco
ChooChooLoco
2 года назад
GNU/Linux

Git: извлечение первого и последнего комита по автору⁠⁠

В силу определённых обстоятельств – периодически стал возникать вопрос, в каких временных рамках я занимался тем или иным проектом. И готового ответа на него у меня не было – как-то не приходило в голову фиксировать подобную информацию.

Git: извлечение первого и последнего комита по автору Кросспостинг, Git, IT, Командная оболочка bash, Linux

Но есть же git – ведь он поможет? Ведь поможет, да?

Git поможет!

Возникла тривиальная идея – вытащить эту информацию из гит-лога. Первый и последний коммиты – плюс-минус дадут требуемые рамки. Достаточно найти все коммиты определённого автора (в данном случае – себя) и взять первый+последний.

Git alias для поиска по автору

Чтобы не запоминать (или не искать в истории) довольно длинную команду – её удобно запихать в пользовательский alias (именно гита, не оболочки). Например – в ~/.gitconfig прописать (в секции [alias]):

Git: извлечение первого и последнего комита по автору Кросспостинг, Git, IT, Командная оболочка bash, Linux

В частном случае – это уже работает достаточно удобно и выглядит примерно так:

user@host:~/single-repo$ git first-last-by-author dmitry f887e8aa55 Dmitry 2022-06-26

6f7a97ded7 Dmitry 2021-04-08

Когда репозиторий для поиска – один. Или парочка. Или… Нет, когда их парочка сотен – становится грустно. Идея явно требует развития!

One Function to find them all

Для решения задачи поиска по набору репозиториев – пришлось воспользоваться функциями оболочки. Они у меня сложены в отдельном файле ~/.config/bash/bash_functions.

На базе команды для обновления репозиториев и приведённого выше гит-алиаса для поиска по автору – сделал такую вот bash-функцию:

Git: извлечение первого и последнего комита по автору Кросспостинг, Git, IT, Командная оболочка bash, Linux

Теперь поиск работает и в общем случае (в каталоге multi-repo лежит куча git-репозиториев):

user@host:~/multi-repo$ git-first-last-commit-by-author dmitry

8f1d4ae Dmitry 2022-08-16

83a8f89c Dmitry 2023-02-15

Видно, что здесь порядок сортировки по датам – прямой. Мне так удобней, но всегда можно использовать ключ --reverse для sort внутри git-first-last-commit-by-author().

Показать полностью 2
[моё] Кросспостинг Git IT Командная оболочка bash Linux
1
5134
Lifehack
Lifehack
2 года назад
Life-Hack [Жизнь-Взлом]/Хакинг

Шпаргалка по Linux⁠⁠

Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Шпаргалка по Linux Linux, Картинка с текстом, Длиннопост, Командная оболочка bash
Показать полностью 9
Linux Картинка с текстом Длиннопост Командная оболочка bash
588
34
Doctor.Dick
2 года назад
GNU/Linux
Серия Массовое конвертирование изображений в ubuntu

Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия⁠⁠

Начало цифрового рукоблудия тут: Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg

Спасибо @Dristofor, который навеял мне мысль про более изящное решение.

В thunar можно добавлять кастомные пункты в контекстное меню (Правка - Особые действия), после чего путь к файлам, имена выделенных файлов и что там надо передаются в качестве параметров в программу обработчик. А еще есть комплект программ ImageMagick, где есть консольная команда convert, которая всякие форматы изображений конвертирует друг в друга с синтаксисом типа convert SOURCE RESULT. То есть, по итогу, задача - выцепить из параметров скрипта имена конвертируемых файлов без расширений, и с полным путем конвертировать их в файлы с теми же именами в новом формате. Причем, не перепиливая скрипт под новый формат каждый раз.

Реализация:

#!/bin/bash

#convertany.sh [result_format] [path] [filename1 filename2...]

#для использхования с imagemagick

i=1

for counter in "$@" #цикл с перебором параметров запуска скрипта

do

if [ ! $i -eq 1 ] && [ ! $i -eq 2 ] #дурацкое решение, ниже объясню

then

source="$2""/""${counter}"; #вылепить полное имя файла из 2-го параметра и имени файла

result="${source%.*}"".""${1}" #поменять расширение в полном имени на параметр 1

convert "$source" "$result" #конвертировать, собсна

fi

i=$((i+1));

done

Что все это значит:

Скрипт вызывается с параметрами: 1-желаемое расширение, в формат которого конверируется файл; 2- путь к конвертиируемым файлам; начиная с 3-го параметра - имена файлов в обрабатываемой папке. Все параметры прогоняются через цикл, в котором игнорируются 1 и 2 параметры, а из коротких имен файлов лепятся длинные имена с новым и старым расширением, которые подставляются в команду конвертера imagemagick. Почему-то условный переход на сравнение $counter $1 и $2 у меня не заработал, так что я засунул костыль ввиде счетчика, извинити. Изначально я хотел просто запрашивать пачку длинных имен файлов, но потом узнал, что длина командной строки в линухе ограничена 4кб, и выбрал вариант покороче.

Далее, скрипт у нас, конечно, помечен, как исполнимый, imagemagick установлен. Ковыряем настройки Особых действий в Thunar:

Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия Linux, Программирование, Linux mint, Командная оболочка bash, Конвертер, Длиннопост
Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия Linux, Программирование, Linux mint, Командная оболочка bash, Конвертер, Длиннопост

Соответственно, после имя_скрипта.sh и перед %d%N вписываем то расширение, для получения которого мы все это теребим. После заполнения всего этого в настройках, выбираем пачку файлов картинок (причем, можно разного формата), тыкаем в контекстном меню на свежевылупившийся пункт, получаем новые гифки или что там заказывали.

Ньюанс. Во-первых, ранние версии imagemagick (у меня 6-я) не умеют обрабатывать, например, .heic; что оно ест, можно узнать командой "convert -help". Далее, как я понимаю, в поздних версиях вместо convert пишут magick, соответственно, команду в скрипте надо поменять. Ну и, в моем случае, для обработки .heic`ов, нужен сторонний конвертер heif-convert из пакета libheif-examples; вписывается вместо "convert", работает с тем же синтаксисом, в настройках Особых действи тунара надо указать шаблон имени файла *.heic и Появляться, если содержит Другие файлы.

Как оно лепится к наутилусу, я без понятия, но - почти уверен - не сильно сложнее.

Показать полностью 2
[моё] Linux Программирование Linux mint Командная оболочка bash Конвертер Длиннопост
58
46
Doctor.Dick
2 года назад
GNU/Linux
Серия Массовое конвертирование изображений в ubuntu

Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg⁠⁠

UPD я улудшил Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия

В общем, у меня айфон и убунта. Не самое удобное сочетание, но, если ты однажды перешел на Линукс, значит - у тебя уже изначально предрасположенность к танцам с бубном вокруг компьютера. С помощью Warpinator'а перекидывание файлами с ноутбука на телефон и обратно наладилось, а после того, как в пыльном углу образовался nas-сервер из старого ноутбука - процесс стал непринужденным. Однако, выяснился ньюанс - фотки на гейфоне пишутся почему-то в странненьком формате .heic, а весь остальной мир предпочитает жпг. Причем, он выяснился, когда мне надо было заслать в налоговую два-три десятка фотогорафий документов. И онлайн-конвертеры почему-то адекватно при этом не работали. В общем. ВЫЗОВ ПРИНЯТ. За неадекватное для поставленной задачи время (чет типа полдня) было порождено решение в виде баш-скрипта:

#!/bin/bash

IFS=$'\n'

read -r -d '' -a array < <( xclip -selection clipboard -out && printf '\0' )

for element in "${array[@]}"

do

strlen=${#element} #дляна имени файла с расширением

pathlen=`expr $strlen - 4` #длина имени без последних 4 символов heic

path=`expr substr $element 1 $pathlen` #имя файла без расширения (первые "все - 4" символы)

jpg=$path"jpg" #прилепить новое расширение

heif-convert "$element" "$jpg" #тут можно вкорячить любой конвертер

done

Соответственно, для работы баш-скрипта нужны пакеты xclip и libheif-examples. Теперь - что вообще происходит: xclip - консольная утилита для работы с буфером обмена. heif-convert - команда из пакета libheif-examples, которая конветртирует файл из имя.хейф в имя.жпг. После того, как все пакеты установлены и вся лабуда скопипащена в файл скрипта с расширением .sh, который помечен, как исполнимый, делается следующее: в тунаре (кстати, не знаю, будет ли работать в наутилусе) выделяются подопытные файлы, копируются в буфер обмена. Далее, хоткеем или консолью запускается скрипт. Далее, оно делает копии скопированных в буфер файлов в новом формате с теми же именами в той же папке. Подробно: после копирования из тунара файлов в буфере оказывается кучка строк типа такого:

/home/username/123/IMG_0144.HEIC

/home/username/123/IMG_0145.HEIC

/home/username/123/IMG_0146.HEIC

первые 2 строки после бин-баш - чтение содержимого буфера обена в массив переменных, где каждая переменная - полное имя файла. Затем - перебор элементов массива (полных имен файлов), замена расширения на конце и впихивание "исходного_имени_и_расширения" и "конечного_имени_и_расширения" в непосредственно команду конвертера. Больше всего гемора было с поиском рабочего решения по чтению буфера в массив. Из плюсов получившегося поделия - с учетом распространенности в линухе консольных конвертеров файлов с синтаксисом типа КОНВЕРТЕР "ИЗ_ЭТОГО" "В_ЭТО", этот скрипт непринужденно может быть перепилен под любой подобный конвертер. Удобно же. Вроде.

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