команды и вывод этих команд.
Т.е. мне нужно журналировать все мои действия.
Какой самый простой способ такое реализовать?
Конечно хочется при этом сохранить все возможности автокомплита, который баш предлагает.
что значит журналировать действия и при чем тут раст
сделать ПО которое запускает баш но при этом весь его stdout и stdin в себе собирает и кладет в файлики и в паралель выводит в текущий stdout stdin (но будут проблемы, в плане управляющие символы.. и понятия сопоставления где какая команда..)
так на расте нужно сделать.... в рамках повышения квалификации
почему бы просто не открыть .bash_history
там вывод не сохраняется
а как вот эти все автокомплиты работают? это функции терминала или условного баша?
управляющие символы будут.. тоесть если ты вводишь T, а потом жмешь таб то в stdin попадет и T и TAB.. а потом в stdout будет как T (управляющий стереть строку и установить позицию 0) и что там от автокомплита. но это я про простой автокомплит и это надо обработать!
/etc/bash_completion можешь тут посмотреть, там будет путь где лежит путь до файла в котором написан код того как это работает (2200 строчек)
ну или сделайте форк баша и приделайте к нему хоть unix socket и ловите события вызова команд и в нужный момент пишите их лог 😁📌 но тогда сильно теряется смысл раста во всем этом.. и тянуть внешнюю утилиту с модами.. бяка. // лучше или как я сказал жестко отлаживать ввод и вывод баша, или форчить но не с растом..
Написать kitten для kitty, правда работать будет только с терминалом kitty https://github.com/kovidgoyal/kitty/issues/2454
А без автокомплита не интересно будет? Там сильно все упрощается.
https://man7.org/linux/man-pages/man1/script.1.html
вообще бомба :) делает ровно то, что мне нужно было. придется только парсер написать к этому... :)
Есть сервис "ютуб для консольных роликов". Позволяет записывать всё что происходит в консоли в специальном текстовом формате и потом воспроизводить это в онлайн плеере.
asciinema
спасибо но у меня цель это траблшуттинг и потом нужно иметь возможность посмотреть, что делал, script на первый взгляд подходит сейчас только подумал, что по ssh может не сработать
Обсуждают сегодня