वर्तमान टर्मिनल नाम कैसे प्राप्त करें?


17

मैं वर्तमान टर्मिनल नाम कैसे प्राप्त करूं?

मेरा मतलब उस नाम से है जो psTTY कॉलम में दिखाता है, जैसे:

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)

उपरोक्त उदाहरण में, मुझे लाने की आवश्यकता है pts/2जो संभवतः वर्तमान टर्मिनल का नाम है जो उन आदेशों को निष्पादित करता है।


जवाबों:


26
tty

अब मुझे ३० अक्षर दर्ज करने हैं जहाँ ३ पर्याप्त होगा ... :-)


apropos ttyशिक्षाप्रद हो सकता है, भी (-:
ट्रिपल

1
@tripleee यदि आप जानते हैं कि परिणाम प्राप्त करना आमतौर पर आसान लगता है। लेकिन यह वास्तव में एक कठिन था। मैं आदेश 125 प्रतिनिधि अंक सीमा से ऊपर उसे किक करने में प्रश्न वोट दें तो वह लायक इनाम मेरे महान प्रयास के लिए पेशकश कर सकते हैं ... चाहिए
Hauke Laging

2
आपके जवाब से मुझे आश्चर्य हुआ कि मुझे ttyPTY या TTY का नाम कहाँ मिलता है। मैं strace -o spork ttyयह पता लगाने के लिए दौड़ा कि यह एक / proc फ़ाइल पर एक रीडलिंक करता है: readlink("/proc/self/fd/0", "/dev/pts/5"..., 4095) = 10 यह बहुत अच्छा है कि / ऐसी निफ्टी चीजें करने के लिए proc का उपयोग किया जा सकता है, लेकिन इससे पहले Unixes ने एक लचीली / proc फाइलसिस्टम के बिना, tty नाम प्राप्त करने के लिए क्या किया?
ब्रूस एडिगर

आप बस समझा सकते हैं कि वह कमांड क्या है, यह क्या करता है और आप इसके साथ और क्या कर सकते हैं और यह क्या है, यह एक बेहतर जवाब होगा।
बॉबी

@ बॉबी हर उत्तर को बेहतर बनाया जा सकता है। प्रश्नकर्ता ने दो मिनट के बाद अपनी समस्या हल कर ली; इतना बुरा नहीं IMHO। गंभीरता से, मुझे नहीं पता कि आप और क्या कर सकते हैं tty। यह क्या करता है वास्तव में क्या सवाल है? मुझे "क्या है कि कमांड" और "यह क्या करता है" के बीच अंतर नहीं मिलता है। एक कमांड क्या है? लेकिन, हे, मैं कुछ नहीं के लिए upvotes नहीं चाहता। यदि आप एक स्पष्ट रूप से बेहतर उत्तर लिखते हैं (जो मेरा बचाव हो सकता है) तो मैं उसके लिए 50 प्रतिनिधि इनाम दूंगा (जितनी जल्दी हो सके दो दिनों में)।
हाउक लागिंग

3

पुन: "आप बस समझा सकते हैं कि वह कमांड क्या है, यह क्या करता है और आप इसके साथ और इसके अलावा क्या कर सकते हैं, यह एक बेहतर जवाब होगा। - बॉबी"

वर्तमान टर्मिनल का यूनिक्स नाम (या कंसोल, जैसा कि हम बूढ़े लोग कभी-कभी इसे कॉल करने के लिए भी उपयोग करते हैं) है: / dev / tty, जो आसानी से कमांड प्रॉम्प्ट से एक नई मल्टी-लाइन फ़ाइल बनाने के लिए उपयोग किया जा सकता है: cp / dev / tty README.md (फिर मारकर कर्सर को एक नई ब्लैंक लाइन पर रखा जाता है, जहाँ आप टेक्स्ट में प्रवेश कर सकते हैं, फिर से वापसी कर सकते हैं, दूसरी लाइन में प्रवेश कर सकते हैं, वगैरह। जब लाइन्स में प्रवेश समाप्त हो जाता है, तो एक कंट्रोल-डी करें जो cp कमांड को बाहर निकलने का कारण बनता है। और आपने एक एकल कमांड के साथ एक बहु-पंक्ति फ़ाइल बनाई होगी)।


"नाम" टैटी टेलीटाइप (मूल टर्मिनल डिवाइस) से लिया गया है, जो यह भी बताता है कि यह / देव डियर में क्यों है।
user120016

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.