tr
заменяет отдельные символы, а не строки. Как вы предполагаете, вы можете использовать sed
для удаления строки в конце строки:
git branch --merged dev | sed 's/@squashed$//'
Вместо зацикливания используйте grep
, чтобы определить, содержит ли список строк, по одной на строку, строку, начинающуюся со ссылочной строки:
git branch --merged dev | sed 's/@squashed$//' | grep -q "^..$current_branch"
А еще лучше, поскольку вы используете git
, попросите его отфильтровать для вас:
git branch --list "${current_branch}*" --merged dev
перечислит любую ветку, объединенную с dev
, имя которой начинается с текущей ветки. (Поскольку вы выполняете фильтрацию по началу имен веток, вам не нужно удалять часть «@squashed», если только я что-то не упустил.)
Xephyr, если он есть в вашем дистрибутиве. Xephyr или его предшественник Xnest. Запустите Xephyr :1
, он начнет отображать окно. Затем запустите DISPLAY=:1 rxvt
или DISPLAY=:1 xfwm4
, чтобы терминал появился на дисплее Xephyr, или чтобы оконный менеджер управлял окнами на дисплее Xephyr. Параметр -size
управляет размером окна Xephyr, например. Xephyr -size 1024x768
.
Для этой цели можно использовать косоглазие :https://github.com/a-ba/squint/
Первоначально он был разработан для обеспечения обратной связи с внешним монитором при проведении презентации, но он также хорошо работает с виртуальными мониторами (, например :для совместного использования экрана во время видеоконференции ). Вам не нужно жонглировать дополнительным X-сервером.
Вы можете сделать что-то вроде:
xrandr --addmode VIRTUAL1 1024x768
xrandr --output VIRTUAL1 --mode 1024x768 --right-of HDMI1
для настройки виртуального монитора, затем запустите:
squint -w
Теперь при наведении указателя мыши на правый экран всплывает окно с его содержимым. Вы можете захватить содержимое этого окна, чтобы записать свой скринкаст.