่ถฃๅณใตใผใใฎไธใงใใใคใใฎใตใผใในใใญใฐใฉใ ใๅใใใใ. ๆฅญๅใ ใจใใใญใฐใฉใ ใฎไพๅญ้ขไฟใฎ่ก็ชใ ใจใใ่ชๅใงๅ่ตทๅใจใใฎใใใซใใใฎใใใซdockerใไฝฟใใใ่ถฃๅณใตใผใใงใใใพใงๅคง่ข่ฃใชใใจใใใใใชใ. ไปใพใงใฉใใใฃใฆใใใใจ่จใใฐใGNU screen ใ้ฉๅฎใธใฃใณใซใใจใซ็ซใฆใฆใใใฎไธญใฎ window ใใจใซใใญใปในใๆใงๅใใใฆใใ. ใใใ ansible ใจใใงใทใใฅใฌใผใทใงใณใใใใใซใใฆใใใฐใใ.
ไปฎใซ deploy
ใจใใๅๅใฎ screen ใ่ตทๅใใฆใใ.
screen -S deploy
ใใใใใฃใจๆฎใใฆใใใฆใใใฎไธญใซ1ใคใใคใใญใฐใฉใ ใ็ใใใฆใใ.
deploy
ใฎไธญใง window ใ็ซใฆใฆใใณใใณใใๅ
ฅๅใใ. window ใซใฏไธๆใชๅๅใไธใใฆ็ฎก็ใใใฎใ่ฏใใจๆใ. ไธใฎไพใงใฏไปฎใซ test
ใจใใฆใใ.
# test ใจใใๅๅใฎ window ใ้ใใฆ bash ใ exec ใใ
# ๆๅพใฎ bash ใ็็ฅใใใฐใใใฉใซใใฎ shell ใ่ตทๅใใใฎใงใใใงใใใชใใใใงใใ
screen -S deploy -X screen -t test bash
# -p test ใง test ใ้ธใใง (pre-select) stuff ใณใใณใใงๆๅญๅใๅ
ฅๅใใ
# ๆๅพใซๆน่กใๅ
ฅใใใฐใ้ๅธธใฎใทใงใซใธใฎๅ
ฅๅใฎใใใซใใณใใณใใๅฎ่กใใใ
# $'...' ใฏ \n ใๆน่กใซใชใใใใฎๆงๆ
screen -S deploy -p test -X stuff $'while :; do date; sleep 1; done\n'
ใใฃใจใใๆนๆณใใใใชใ็ฅใใใใงใ.
man screen
ใใใจ -p
ใชใใทใงใณใซใฏใใฃใจ็นๅฅใชๆๅญใไธใใใใจใงใwindow ใๆฐใใ้ใใฆใใใงใณใใณใใๅฎ่กใงใใใจใใ้ขจใซๆธใใฆใใจๆใใฎใ ใใใใใฏไธๆใๅใใชใใฃใใฎใงใใใใใ window ใ้ใใใใฎใใจใใใ. ๆณจๆใจใใฆใ้ใใ ใใ ใจใ
-t
ใง title (=window name) ใไปใใฆใใ-p
ใง window ใๆๅฎใใwindow title (name) ใซ็งใฏ current directory ใ่กจ็คบใใใใใซใใฆใใ. zsh ๅดใฎ่จญๅฎใง. zsh ใ้ใ็ตใใฃใๆ็นใงๅๆใซ name ใๅคใใใฎใงใ -p
ใงๆๅฎใใฆใ Cound not find ใจ่จใใใฆ่ฉฐใพใฃใฆใ. ๅนธใ bash ใ้ใใฐๅ้ฟใงใใใฎใงใไธใฎไพใงใฏ bash ใ้ใใใใซใใฆใใ.
<ESCAPE_SEQUENCE> "
ใง window list ใ่กจ็คบใงใใฆใ็ขบใใซ -t
ใงๆๅฎใใ name ใฎ window ใ็ใใฆใใใ็ขบใใใๅฟ
่ฆใใใ. -p
ใงๆๅฎใงใใใฎใฏ ใใใซใใ็ชๅทใพใใฏ name ใงใใ.