man/text
man · Metin İşleme

$ tset

Bölüm 1 · Metin İşleme

terminal başlatma

Özet

tset [-IQVcqrsw] [-] [-e karakter] [-i karakter] [-k karakter] [-m eşleme] [terminal]
reset [-IQVcqrsw] [-] [-e karakter] [-i karakter] [-k karakter] [-m eşleme] [terminal]

Açıklama

tset, terminalleri başlatır. Önce hangi terminal tipinin kullanıldığını belirler. Bu belirleme işleminde bulunan ilk terminal tipi kullanılır:

  1. Komut satırında belirtilen terminal argümanı.
  2. TERM ortam değişkeninin değeri.
  3. Yalnızca BSD sistemlerinde, /etc/ttys dosyasında standart hata çıktı aygıtıyla ilişkilendirilmiş terminal tipi. System V benzeri UNIX sistemlerinde ve bu kuralı kullanan sistemlerde getty, TERM ortam değişkenini /etc/inittab tarafından aktarılan tipe göre ayarlayarak bu görevi yerine getirir.
  4. Varsayılan terminal tipi olan unknown.

Terminal tipi komut satırında belirtilmemişse -m seçeneği eşlemeleri uygulanır. Daha fazla bilgi için Terminal Tipi Eşleme bölümüne bakın.

Terminal tipi soru işareti (?) ile başlıyorsa kullanıcıdan terminal tipini onaylaması istenir. Boş yanıt tipi onaylar; başka bir terminal tipi girilirse bu yeni tip kullanılır.

Terminal tipi belirlendikten sonra terminal için terminfo girdisi alınır. Bu tip için terminfo girdisi bulunamazsa kullanıcıdan başka bir terminal tipi istenir.

terminfo girdisi alındıktan sonra pencere boyutu, geri silme, kesme ve satır sonlandırma karakterleri ile diğer birçok ayar yapılır. Terminal ve sekme başlatma dizileri standart hata çıktısına gönderilir. Son olarak silme, kesme ve satır sonlandırma karakterleri değişmişse veya varsayılan değerlerine ayarlanmamışsa, değerleri standart hata çıktısında gösterilir.

Diğer başlatma işlemleri yerine yalnızca pencere boyutlandırmayı veya kontrol karakterlerini seçmek için -c ya da -w seçeneğini kullanın. İki seçenek de belirtilmemişse her ikisinin de geçerli olduğu varsayılır.

Reset Olarak Çalışma

reset olarak çağrıldığında tset, terminal başlatma işleminden önce cooked ve echo modlarını ayarlar, cbreak ve raw modlarını kapatır, yeni satır çevirisini açar ve ayarlanmamış özel karakterleri varsayılan değerlerine sıfırlar.

Bu işlem, bir programın beklenmedik şekilde sonlanarak terminali anormal durumda bırakmasından sonra kullanışlıdır. Anormal durumda satır başı karakteri artık çalışmayabileceğinden, terminali toparlamak için şu komutu girmeniz gerekebilir:

<LF>reset<LF>

Satır besleme karakteri normalde Control-J ile girilir. Terminal bu durumda komutu ekrana yansıtmayabilir.

Seçenekler

  • -c: Kontrol karakterlerini ve modlarını ayarlar.
  • -e karakter: Silme karakterini belirtilen karaktere ayarlar.
  • -I: Terminale terminal veya sekme başlatma dizilerini göndermez.
  • -i karakter: Kesme karakterini belirtilen karaktere ayarlar.
  • -k karakter: Satır sonlandırma karakterini belirtilen karaktere ayarlar.
  • -m eşleme: Bir bağlantı noktası tipinden terminal tipine eşleme belirtir. Daha fazla bilgi için Terminal Tipi Eşleme bölümüne bakın.
  • -Q: Silme, kesme ve satır sonlandırma karakterleri için değer göstermez. Normalde tset, sistemin varsayılan değerlerinden farklı olan kontrol karakterlerinin değerlerini gösterir.
  • -q: Terminal tipini standart çıktıya yazar ve terminali başlatmaz. Tek başına kullanılan - seçeneği eşdeğerdir, ancak artık kullanılmayan eski bir yöntemdir.
  • -r: Terminal tipini standart hata çıktısına yazar.
  • -s: TERM ortam değişkenini ayarlamak için gerekli kabuk komutlarını standart çıktıya yazar. Ayrıntılar için Ortamı Ayarlama bölümüne bakın.
  • -V: Programda kullanılan ncurses sürümünü bildirir ve çıkar.
  • -w: Pencere boyutunu setupterm aracılığıyla çıkarılan boyuta göre yeniden ayarlar. Normalde, setupterm pencere boyutunu algılayamadığı durumlar dışında bunun bir etkisi yoktur.

-e, -i ve -k seçeneklerinin argümanları gerçek karakterler olarak girilebilir. Ayrıca şapka gösterimi de kullanılabilir; örneğin Control-H, ^H veya ^h olarak belirtilebilir.

Ortamı Ayarlama

Terminal tipini ve terminalin yetenekleri hakkındaki bilgileri kabuk ortamına aktarmak genellikle tercih edilir. Bu işlem -s seçeneğiyle yapılır.

-s belirtildiğinde, bilgileri kabuk ortamına girmek için gereken komutlar standart çıktıya yazılır. SHELL ortam değişkeni csh ile bitiyorsa komutlar csh içindir; aksi halde sh içindir.

csh komutlarının noglob kabuk değişkenini ayarlayıp ardından kaldırarak tanımsız bıraktığını unutmayın.

.login veya .profile dosyalarındaki aşağıdaki satır ortamı doğru şekilde başlatır:

eval `tset -s seçenekler ...`

Terminal Tipi Eşleme

Terminal sisteme doğrudan bağlı olmadığında veya mevcut sistem bilgisi yanlış olduğunda, /etc/ttys dosyasından ya da TERM ortam değişkeninden elde edilen terminal tipi genellikle network, dialup veya unknown gibi genel bir ifadedir. tset bir başlangıç betiğinde kullanıldığında, bu tür bağlantı noktalarında kullanılan terminal tipi hakkında bilgi sağlanması genellikle istenir.

-m seçeneğinin amacı, belirli bir koşul kümesinden terminal tipine eşleme yapmaktır. Başka bir deyişle tset komutuna, belirli bir hızdaki belirli bağlantı noktasında hangi terminal tipinin varsayılacağını bildirir.

-m seçeneğinin argümanı şu parçalardan oluşur:

  • İsteğe bağlı bağlantı noktası tipi.
  • İsteğe bağlı operatör.
  • İsteğe bağlı baud hızı belirtimi.
  • İsteğe bağlı iki nokta üst üste (:).
  • Terminal tipi.

Bağlantı noktası tipi, operatör veya iki nokta üst üste karakteriyle sınırlandırılan bir dizedir.

Operatör >, <, @ ve ! karakterlerinin herhangi bir kombinasyonu olabilir. > büyüktür, < küçüktür, @ eşittir anlamına gelir; ! testi tersine çevirir.

Baud hızı sayı olarak belirtilir ve standart hata çıktısının, yani kontrol terminali olması gereken yerin hızıyla karşılaştırılır. Terminal tipi bir dizedir.

Terminal tipi komut satırında belirtilmemişse terminal tipine -m eşlemeleri uygulanır. Bağlantı noktası tipi ve baud hızı eşlemeyle eşleşirse, eşlemede belirtilen terminal tipi mevcut tipin yerini alır. Birden fazla eşleme belirtilmişse geçerli olan ilk eşleme kullanılır.

Örneğin şu eşlemeyi ele alalım:

dialup>9600:vt100

Bu eşlemede bağlantı noktası tipi dialup, operatör >, baud hızı 9600 ve terminal tipi vt100 olur. Terminal tipi dialup ise ve baud hızı 9600 baud değerinden büyükse terminal tipi olarak vt100 kullanılır.

Baud hızı belirtilmemişse terminal tipi herhangi bir baud hızıyla eşleşir. Bağlantı noktası tipi belirtilmemişse terminal tipi herhangi bir bağlantı noktası tipiyle eşleşir.

Örneğin:

tset -m dialup:vt100 -m :?xterm

Bu kullanım, baud hızına bakılmaksızın herhangi bir dialup bağlantı noktasını vt100 terminal tipiyle eşleştirir. dialup olmayan her bağlantı noktası tipi de ?xterm ile eşleşir. Baştaki soru işareti nedeniyle, kullanıcıdan varsayılan bağlantı noktasında gerçekten xterm terminali kullanıp kullanmadığını onaylaması istenir.

-m seçeneği argümanında boşluk karakterine izin verilmez. Meta karakterlerle ilgili sorunları önlemek için tüm -m argümanının tek tırnak içine alınması önerilir. csh kullanıcıları, ünlem işaretlerinden (!) önce ters eğik çizgi (\) eklemelidir.

Uyumluluk

tset, BSD ortamlarıyla geriye dönük uyumluluk sağlamak amacıyla sunulmuştur. Çoğu modern UNIX sisteminde /etc/inittab ve getty(1), her çevirmeli hat için TERM değişkenini uygun şekilde ayarlayabilir; bu da tset komutunun en önemli kullanım amacını ortadan kaldırır.

Bu uygulama, burada belirtilen birkaç istisna dışında 4.4BSD tset gibi davranır.

-S seçeneği artık çalışmaz; standart hata çıktısına hata mesajı yazdırır ve sonlanır. -s seçeneği ise TERMCAP değişkenini değil, yalnızca TERM değişkenini ayarlar. Bu değişikliklerin ikisi de TERMCAP değişkeninin artık terminfo tabanlı ncurses altında desteklenmemesinden kaynaklanır; bu da tset -S seçeneğini işlevsiz kılar.

tset aracını TSET adlı bir bağlantı üzerinden veya büyük harfle başlayan başka bir adla çağırmanın, terminali yalnızca büyük harf kullanacak şekilde ayarladığı belgelenmemiş bir 4.4BSD özelliği vardı. Bu özellik kaldırılmıştır.

-A, -E, -h, -u ve -v seçenekleri 4.4BSD sürümünde tset aracından silinmiştir. Bunların hiçbiri 4.3BSD sürümünde belgelenmemiştir ve en iyi ihtimalle sınırlı kullanıma sahiptir.

Benzer şekilde -a, -d ve -p seçenekleri de belgelenmemiş ve kullanışsızdır, ancak yaygın olarak kullanıldıkları görüldüğü için korunmuştur. Bu üç seçeneğin kullanımı yerine -m seçeneğine geçilmesi önerilir.

-n seçeneği varlığını sürdürür, ancak etkisi yoktur. Bu nedenle -adnp seçenekleri yukarıdaki kullanım özetine dahil edilmemiştir.

-e, -i ve -k seçeneklerinin argümansız belirtilmesine hâlâ izin verilir. Ancak bu kullanımların, karakteri açıkça belirtecek şekilde düzeltilmesi önerilir.

4.4BSD itibarıyla tset aracını reset olarak çalıştırmak artık -Q seçeneğini içermez. Ayrıca bazı eski tset uygulamalarındaki - seçeneği ile terminal argümanı arasındaki etkileşim kaldırılmıştır.

Ortam

tset şu ortam değişkenlerini kullanır:

  • SHELL: tset komutuna TERM değişkenini sh veya csh söz dizimini kullanarak başlatıp başlatmayacağını bildirir.
  • TERM: Terminal tipinizi belirtir. Birbirine benzeyen pek çok terminal tipi olsa da her biri kendine özgüdür.
  • TERMCAP: Bir termcap veritabanının konumunu belirtebilir. Mutlak yol adı değilse, yani / ile başlamıyorsa, tset terminal açıklamasını aramadan önce bu değişkeni ortamdan kaldırır.

Dosyalar

  • /etc/ttys: Sistem bağlantı noktası adından terminal tipine eşleme veritabanı. Yalnızca BSD sürümlerinde kullanılır.
  • /usr/share/terminfo: Terminal yetenekleri veritabanı.

Ayrıca Bakınız

csh(1), sh(1), stty(1), curs_terminfo(3X), tty(4), terminfo(5), ttys(5), environ(7)

Tarihçe

tset komutu ilk olarak BSD 3.0 ile sunulmuştur. ncurses uygulaması, Eric S. Raymond <esr@snark.thyrsus.com> tarafından bir terminfo ortamı için 4.4BSD kaynaklarından hafifçe uyarlanmıştır.

Bu belge, ncurses sürüm 5.7'yi (yama 20081102) açıklar.

tset(1)