Перейти к содержанию

Функции оболочки

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

Сжатие

  • compress [file/dir]: Создать архив tar.gz из файла/каталога.
  • decompress [file.tar.gz]: Распаковать файл tar.gz.

Накопители

  • iso2sd [image.iso]: Создать загрузочный накопитель на SD-карте из указанного iso-файла с интерактивным выбором накопителя.
  • format-drive [device] [name]: Отформатировать весь диск одним разделом exFAT (который работает также на Windows и macOS). Запустите без аргументов, чтобы увидеть доступные накопители. Будьте осторожны!

Раскладки для разработки

Мгновенные многопанельные раскладки для разработки в tmux:

  • tdl [ai]: Создать Tmux Dev Layout с вашим редактором, AI-агентом и терминалом. Используйте alias агентов, например tdl c для opencode или tdl cx для Claude Code, или передайте второго агента, чтобы запустить обоих, например tdl c cx.
  • tds: Создать Tmux Dev Square с редактором, отслеживанием diff (через hunk diff --watch), терминалом и opencode.
  • tdlm [ai]: Создать окно tdl для каждого подкаталога в текущем каталоге.
  • tsl [count] [command]: Создать рой панелей, выложенных сеткой, все запускают одну и ту же команду (отлично для AI-агентов).

Те же раскладки доступны для Herdr как hdl, hds, hdlm и hsl.

Worktree в Git

  • ga [branch]: Создать новый worktree и ветку рядом с текущим репозиторием и перейти в него.
  • gd: Удалить текущий worktree и его ветку (сначала запрашивает подтверждение).

Наблюдатели rsync

  • rsw [source] [destination]: Запустить фонового наблюдателя, который выполняет rsync из источника в назначение при любом изменении. Назначением может быть удалённый хост, например rsw ~/Work/app nyc-dev:Work/app.
  • lsw: Вывести список всех активных наблюдателей.
  • dsw: Остановить всех активных наблюдателей.

Проброс портов SSH

Идеально для веб-разработки с привилегиями безопасного контекста localhost против удалённой машины.

  • fip: Пробросить один или несколько портов с удалённого хоста на localhost через SSH.
  • dip: Отключить один или несколько проброшенных портов.
  • lip: Вывести список всех активных пробросов портов SSH.

Допустим, вы запускаете dev-сервер на порте 3000 на машине, доступной как nyc-dev, тогда можно выполнить fip nyc-dev 3000, чтобы пробросить этот порт, так что localhost:3000 на самом деле достигает nyc-dev:3000, но без необходимости в SSL-сертификатах для установления безопасного контекста, нужного для тестирования веб-сокетов и тому подобного.

Переподключение SSH

Сам ssh обёрнут в функцию, которая приводит терминал в порядок, если соединение умирает, пока удалённый tmux, Herdr или редактор его удерживает, а затем автоматически переподключается, когда интерактивная сессия обрывается (Ctrl-C останавливает цикл повторов).