Saturday, February 21, 2009

Linux komut satırında "screen" kullanımı

Özellikle uzak bir bağlantı ile komut satırı kullanıyor iseniz, arada bağlantının kopması durumunda sinir bozucu durumlar oluşabilir.
Bu tür durumlar için "Screen" aracı kullanılabilir.

Aynı terminal ekranında birden fazla terminal ekranı açmak olarak düşünebilirsiniz. Bir tür "Yakuake" aracını uzak bağlantılar için kullanmak da diyebilirim.

Komut satırından
screen
yazarak çalıştırabilirsiniz. Yüklü değilse paket yöneticinizle ilgili komutu verin.
Fedora, Centos için:
yum install screen
screen, komutu verdiğinizde ekranda bir değişme farkedemiyebilirsiniz. Ctrl+a+c ile yeni bir ekran daha yaratın. Şu an 2 tane ekranınız oldu, Ctrl+a ve tekrar Ctrl+a ya basarak, ekranlar arası geçiş yapabilirsiniz.
Bağlantınız koptuğunda açık ekranları yeniden ulaşmak için önce açık ekranların bilgisini alın:
screen - list
There are screens on:
8623.pts-3.makinaismi (Attached)
8460.pts-3.makinaismi (Detached)
benzeri bir liste alabilirsiniz. "Attached" yazanı, -d -r ile, "Detached" olanı da -d ile açabilirsiniz.
screen -d -r 8623
screen -r 8480
Kullanabileceğiniz bazı komutları şöyle sıralamak mümkün.
C+a+c (yeni pencere)
C+a+" (pencere listesi) (çift tırnak işareti)
C+a+d (pencereyi arka plana alma)
C+a+0-9 (ya 0 ya 9, açık pencereler arasında geçiş)
C+a+A (Büyük "A", isim verme)
C+a C+a (açık pencereler arasında sırayla geçiş)
C+a+n ya da space ya da p (sonraki/önceki ekran)
C+a+K ya da exit (Büyük "K", ekranı kapatma, exit sormadan kapatır)
Bu arada yanlışlıkla C+s ye basarsanız, (stop) sinyali vermiş olabilirsiniz, tekrar başlamak için C+q ya basınız.

5 comments:

mertada.net said...

Ellerinize sağlık.Çokk teşekkürler makaleniz için.

Hüseyin "Silent" Çağlar said...

Sevindim işinize yaramasına :-) , iyi çalışmalar

mehmet said...

ben şöyle birşey yapmak istiyorum uzak bir bilgisayarda yada serverda terminal aracılığıyla bir program çalıştırayım daha sonra terminali kapatayım ama program çalışmaya devam etsin. daha sonra ben gerektiği zaman programın bitip bitmediğini kontrol edebileyim yani uzak bir bilgisayarda bağımsız olarak program çalıştırılabilirmi.. bu mümkün mü..

mehmet said...

ben şöyle birşey yapmak istiyorum uzak bir bilgisayarda yada serverda terminal aracılığıyla bir program çalıştırayım daha sonra terminali kapatayım ama program çalışmaya devam etsin. daha sonra ben gerektiği zaman programın bitip bitmediğini kontrol edebileyim yani uzak bir bilgisayarda bağımsız olarak program çalıştırılabilirmi.. bu mümkün mü..

Hüseyin "Silent" Çağlar said...

@Mehmet
"screen" ile bunu yapabilirsiniz.