LINUX.ORG.RU
ФорумTalks

bash

 


0

1

Накидайте пожалуйста реальных задач для программирования на bash. Конкретно которые используются у вас в работе. Для обучения=)


Ну например, массовые переименования файлов. Допустим есть куча файлов

img0001.png
img0002.png
img0003.png
img0004.png
img0005.png
img0006.png
img0007.png
...

Надо сместить на +3 нумерацию после img0004 (чтобы в образовавшуюся дырку можно было что-то добавить). Или наоборот, удалить какие-то файлы и сместить в минус нумерацию, чтобы была последовательной.

praseodim ★★★★★
()

Подпишись на тег bash, и лови реальные задачи. Как вариант, пройдись поиском по сайту и посмотри уже заданные.

ashot ★★★★
()

Ну например на баше можно написать скрипт который слушает комманду на порте, и потом в зависимости от того что пришло выполняются другие скрипты. Вешал такую штуку на LTE модем на андроиде так как тулчейна для девайса нет (спасибо китайцам), а места там в постоянной памяти только на пару скриптов на баше и есть.

И вон недавно парсер всяких мусорных сообщений делал сначала собирая их через getmail (забрать письма из всех папочек на ящике не удаляя их и не помечая как прочитанные оказалось не тривиально), а потом grepом сортировка какие откуда и вытаскивание из них ценных данных для последующего залития в базу. Софт который письма шлет древний на древнем железе и его менять невозможно. Пришлось извратиться.

o-
()
Последнее исправление: o- (всего исправлений: 1)
Ответ на: комментарий от o-

спасибо, возможно возьму ваш пример за основу и придумаю что то свое с взаимодействием с портами.

Flover
() автор топика
Ответ на: комментарий от Flover

Есть папка с папками, в которой хранятся иконки в формате .ico. Нужно сконвертировать иконки в .png, создав новую папку и сохранив старую структуру.

ozz_is_here
()

Я на прошлой работе занимался чем-то околобигдатным: молотил CSV-шки на несколько гигабайт, нагородил много портянок на баше для этого, но сохранились лишь некоторые. В ход шли csvkit, csvutils и обычные coreutils, иногда таки Python/PHP ещё задействовал.

bodqhrohro_promo
()

Кастомный алёрт

curl делает запрос апи на сайт, получает ответ в виде plain text ip address, все это является функцией аля ip=$(curl api.ipify.org)

далее функция if, проверяющая адрес с требуемым (если есть впн соединение), и в случае если не совпадает, срабатывает else, исполняющее notify-send с надписью АЛЕРТ!

Вот это попробуй преобразовать в рабочий скрипт

cheetah111v
()

Конвертер systemd файлов в инит-скрипты.

Gu4
()

Напиши компоненты DE на bash кроме WM, используя xdialog или подобный инструмент.

Quasar ★★★★★
()

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

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

Грохнуть stage/test бд, сделать копию с прода, развернуть, переименовать бд в *_stage/test.

Deleted
()

Для чего его вообще юзать? Bash - кладезь способов выстрелить себе в ногу.

FluffyPillow
()
Последнее исправление: FluffyPillow (всего исправлений: 1)

Когда работал тестировщиком, писал семейку скриптов, которые запускали длительные тесты, которые должны были выполниться в определённой последовательности и в зависимости от разных условий и ещё и периодически. Кароче было 2 (или 3) скрипта, которые обменивались сигналами и в зависимости от сигнала выполняли тест и писали логи.

DELIRIUM ☆☆☆☆☆
()

Все, что длиннее 10 строк (ну 20 может..) лучше писать не на bash. Потому что при дальнейшем развитии проекта это нужно будет развивать и поддерживать, а эти свойства у bash скриптов развиты крайне плохо.

kardapoltsev ★★★★★
()
Последнее исправление: kardapoltsev (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.