Mevcut terminal adı nasıl alınır?


17

Geçerli terminal adını nasıl getirebilirim?

psTTY sütununda gösterilen adı kastediyorum , örneğin:

root@dor-desktop:/home/dor/Documents/LAMP_setup/webs_install/do/install# ps aux | egrep 'mysql|(^USER)'
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
dor       2238  0.2  1.9 448052 79796 ?        S    17:27   0:17 gedit /home/dor/Documents/LAMP_setup/webs_install/do/install/mysql.install /home/dor/Documents/LAMP_setup/webs_install/do/install/mysql.setup
root      4975  0.1  0.5 324984 22876 ?        S    18:12   0:04 gedit /usr/local/mysql/bin/mysqld_safe
root      8160  0.0  0.0   4108   664 pts/2    S    19:08   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --skip-networking --skip-grant-tables --user=mysql --basedir=/usr/local/mysql --ledir=/usr/local/mysql/libexec
mysql     8279  0.0  0.4 146552 19032 pts/2    Sl   19:08   0:00 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --skip-networking --skip-grant-tables --log-error=/usr/local/mysql/var/dor-desktop.err --pid-file=/usr/local/mysql/var/dor-desktop.pid --socket=/usr/local/mysql/mysql.sock --port=3306
root      8342  0.0  0.0   7632  1024 pts/2    R+   19:14   0:00 egrep --color=auto mysql|(^USER)

Yukarıdaki örnekte, pts/2muhtemelen bu komutları yürüten geçerli terminalin adı olan getirmem gerekiyor .


Yanıtlar:


26
tty

Şimdi 3 karakter yeterli olurdu 30 karakter girmek zorunda ... :-)


apropos ttyöğretici de olabilirdi (-:
üçlü

1
@tripleee Eğer sonucu almak genellikle kolay görünüyor. Ama bu gerçekten zor bir olaydı. Onu 125 rep puan sınırının üzerinde tekmelemek için soruyu onaylamalıyım, böylece büyük çabam için hak ettiği ödülü sunabilir ...
Hauke ​​Laging

2
Cevabınız bana PTY veya TTY'nin adını nereden tty aldığını merak etmemi sağladı. Ben strace -o spork ttybir / proc dosyasında bir readlink olduğunu bulmak için koştu : readlink("/proc/self/fd/0", "/dev/pts/5"..., 4095) = 10 / proc böyle şık şeyler yapmak için kullanılabilir harika, ama esnek / proc dosya sistemi olmadan daha önceki Unixes tty adı almak için ne yaptı?
Bruce Ediger

Bu komutun ne olduğunu, ne yaptığını ve onunla ve başka ne yapabileceğinizi açıklayabilirsiniz, daha iyi bir cevap olacaktır.
Bobby

@Bobby Her cevap daha iyi yapılabilir. Sorgulayan iki dakika sonra sorununu çözdü; o kadar da kötü değil IMHO. Cidden, başka neler yapabileceğiniz hakkında hiçbir fikrim yok tty. Yaptığı şey tam olarak sorunun ne olduğudur. "Bu komutun ne olduğu" ile "ne yaptığı" arasındaki farkı bile anlamıyorum. Komut "nedir"? Ama hey, hiçbir şey için oy istemiyorum. Açıkça daha iyi bir cevap yazarsanız (ki benimki engellemiş olabilir) o zaman bunun için 50 tekrar ödül vereceğim (mümkün olan en kısa sürede, yani iki gün içinde).
Hauke ​​Laging

3

Re: "Bu komutun ne olduğunu, ne yaptığını ve onunla ve başka ne yapabileceğinizi açıklayabilirsiniz, daha iyi bir cevap olurdu. - Bobby"

Geçerli terminalin Unix adı (ya da bizler bazen de çağırmak için kullandığımız gibi): / dev / tty; bu, komut isteminden kolayca yeni bir çok satırlı dosya oluşturmak için kullanılabilir: cp / dev / tty README.md (vurmak daha sonra imleci metin girebileceğiniz, geri dön tuşuna tekrar basabileceğiniz, ikinci bir satır girebileceğiniz vb. yeni bir boş satıra koyar. Satır girmeyi bitirdiğinizde, cp komutunun çıkmasına neden olan bir kontrol-d yapın ve tek bir komutla çok satırlı bir dosya oluşturmuş olacaksınız).


"Name" tty, neden / dev dizininde olduğunu açıklayan TeleType'tan (orijinal terminal Aygıtı) türetilir.
user120016

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.