This is G o o g l e's cache of http://www.debianclub.com/node/22 as retrieved on 17 Feb 2007 16:33:45 GMT.
G o o g l e's cache is the snapshot that we took of the page as we crawled the web.
The page may have changed since that time. Click here for the current page without highlighting.
This cached page may reference images which are no longer available. Click here for the cached text only.
To link to or bookmark this page, use the following url: http://www.google.com/search?hl=en&q=cache%3Ahttp%3A%2F%2Fwww.debianclub.com%2Fnode%2F22&btnG=Search


Google is neither affiliated with the authors of this page nor responsible for its content.

User login

Links

debianclub.com
debian.org
ubuntuclub.com
blognone.com

Syndicate

Syndicate content

screen

เอามาจาก ThaiLinuxCafe - bash tips
---

จิ๊กมาจากบล๊อกคุณพูนลาภเรื่อง คุณเปิด terminal กี่บาน?
ท่านเขียนไว้ดีมาก ๆ

screen เป็น virtual terminal มีประโยชน์มากในการใช้งานผ่าน ssh ข้อดีคือเวลาเรากลับเข้าไปในงานที่ทำค้างอยู่ มันจะเห็นเหมือนกับเราทำที่จุดนั้นจริง ๆ สมมุติเราคอมไพล์งานค้างไว้ ถ้ามีข้อผิดพลาด มันจะแสดงให้เห็นข้อผิดพลาดนั้นด้วย ที่สำคัญคือมันเป็น text mode จึงทำงานเร็วและไม่เปลืองแบนด์วิธ

สั่งเริ่ม screen

$ screen

คีย์ลัดที่ใช้บ่อย
C-a c = สร้างเชลล์ใหม่
C-a n = ไปเทอร์มินัลถัดไป ( ที่ยัง attach อยู่ )
C-a p = ไปเทอร์มินัลก่อนหน้า ( ที่ยัง attach อยู่ )
C-a d = detach เชลล์ปัจจุบัน ( กลับมาด้วยคำสั่ง screen -r )
C-a " = ดูเทอร์มินัลทั้งหมด ( คล้ายคำสั่ง screen -ls )
C-a 0 = ไปเทอร์มินัล 0
C-a 1 = ไปเทอร์มินัล 1
C-a S = แบ่งเทอร์มินัลแบบแนวตั้ง
(*หมายเหตุ C-a คือกด Ctrl+a )

ดูเชลล์ที่มี
$ screen -ls

ไป attach เชลล์ที่ถูก detach
ถ้ามีแค่เชลล์เดียว
$ screen -r
ถ้ามีหลายเชลล์
$ screen -r [pid.]tty[.host]

ปรับแต่งลักษณะของ screen ด้วยไฟล์ ~/.screenrc
$ vi ~/.screenrc

# ไม่เอาข้อความต้อนรับ
startup_message off

# ตั้งค่า scroll มากกว่าค่าปริยาย (100)
defscrollback 1024

# ทำให้มีแถบ status ด้านล่าง
hardstatus on
hardstatus alwayslastline
hardstatus string "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H %{..Y} %m/%d %C%a "

# ใช้ Ctrl+t แทน Ctrl+a
escape ^Ta

ดูเพิ่มเติมได้ที่ gentoo-wiki: TIP Using screen

ถ้าใช้แล้วติดใจ อยากเวียนหัวเพิ่ม ให้ดู man screen

ตัวอย่างการใช้งาน

สมมุติว่าต้องการแก้ธีมของ drupal ที่เครื่อง server1.example.com เราติดตั้ง drupal ไว้ที่ /var/www/drupal สมมุติว่าเป็นธีม newsportal เหมือนของ debianclub ไฟล์ที่ต้องการแก้ไขหลัก ๆ จะมีสองไฟล์ คือ style.css และ page.tpl.php อยู่ใน /var/www/drupal/themes/newsportal/

เราจะเข้าถึง server1 ด้วยการใช้ ssh ปกติ
$ ssh server1.example.com -l webmaster

สั่งรัน screen
$ screen
กด Space bar ตามปกติ

ตอนนี้เราจะอยู่ในเทอร์มินัล 0 แต่ผมนิยมเว้นเทอร์มินัล 0 ไว้สำหรับงานจิปาถะชั่วคราว และใช้เทอร์มินัล 1 ในการแก้ไขไฟล์ style.css และใช้เทอร์มินัล 2 ในการแก้ไฟล์ page.tpl.php

กด C-a c เพื่อสร้างเทอร์มินัล 1
$ cd /var/www/drupal/themes/newsportal
$ vi style.css

กด C-a c เพื่อสร้างเทอร์มินัล 2
$ cd /var/www/drupal/themes/newsportal
$ vi page.tpl.php

หลังจากนี้เราสามารถสลับงานไปมาด้วยการกด C-a สองครั้ง มันจะสลับไปมาระหว่างเทอร์มินัล 1 และ 2

ถ้าเราปิด ssh โดยไม่ออกจาก screen เมื่อเข้ามาใหม่ เราสามารถเข้ามาที่งานที่ทำค้างไว้ได้เลย ด้วยคำสั่ง screen -r

หรือถ้าเราทำงานค้างไว้ที่ทำงาน และยังเปิด ssh ค้างอยู่ และเรากลับไปต่องานที่บ้าน เราสามารถช่วงชิง screen ที่ยังค้างอยู่ที่ทำงานมาด้วยคำสั่ง screen -d -r

จบแล้วครับ ใครมีทิป screen ดี ๆ แบ่งบ้างนะครับ

screenrc

ของผมใช้ .screen ไม่ทำงานครับ ต้องใช้ .screenrc แทน ไม่ทราบว่าเขียนผิด หรือว่า deb ผมมันแปลกเองครับ

.screenrc

เป็น .screenrc จริง ๆ ครับ ขอบคุณมาก ๆ _/|\_
(รบกวน webmaster แก้ให้หน่อยนะครับ)

แก้ไขให้แล้วนะครับ

:)

**********************
Key ID: D4CEFD37
Fingerprint: 1ED3 27F6 48C8 5C9D 4285 F24D D64E C0AF D4CE FD37
**********************

ขอบคุณครับ

:)

ขอบคุณมากครับ

เป็น บทความที่เป็นประโยชน์ต่อผมมาก
ผมเปิด terminal หลายบาน compile มั่ง โปรแกรมมั่ง *-*

ขอบคุณมากครับ

ไม่เคยรู้มาก่อนว่ามีโปรแกรมอย่างนี้ ใช้วิธีถึก ๆ อยู่ตั้งนานครับผม :P


**********************
Key ID: D4CEFD37
Fingerprint: 1ED3 27F6 48C8 5C9D 4285 F24D D64E C0AF D4CE FD37
**********************