SSH पर फ़ंक्शन कुंजियाँ भेजना (F1-F12)


14

मेरे पास एक फेडोरा मशीन है जिसे मैं एसएसएच कर सकता हूं। उन प्रोग्रामों में से एक जिन्हें मैं कभी-कभी फ़ंक्शन कुंजियों का उपयोग करना चाहता हूं। समस्या यह है कि मैं एक Android गोली (ASUS ट्रांसफार्मर इन्फिनिटी) एक भौतिक कीबोर्ड के साथ से SSH'ing कर रहा हूँ, लेकिन कोई है F1- F12चाबियाँ। इसलिए, जब तक कि मैं टर्मिनल ऐप (वीएक्स कनेक्टबॉट) का उपयोग कर रहा हूं, उन्हें एक सुविधा के रूप में जोड़ने का फैसला करता हूं, मैं बाकी कीबोर्ड का उपयोग करके उन्हें भेजने का एक तरीका ढूंढ रहा हूं।

मैं सभी प्रिंट योग्य ASCII वर्ण का उपयोग कर सकते Esc, Ctrl, Shift, Enter, और Tab


मुझे लगता है कि आप Android.SE पर पूछना बेहतर होगा।
derobert

जवाबों:


26

टर्मिनल केवल पात्रों को समझते हैं, चाबियाँ नहीं। इसलिए अल फ़ंक्शन कुंजियाँ वर्णों के अनुक्रम के रूप में एन्कोडेड हैं, नियंत्रण वर्णों का उपयोग करते हुए। इसके अलावा कुछ आम लोगों को किसी संबद्ध नियंत्रण चरित्र है (से Tabहै Ctrl+I, Enterहै Ctrl+M, Escहै Ctrl+[), समारोह चाबियाँ बच दृश्यों के साथ शुरु होने भेजने Ctrl+[ [या Ctrl+[ O। आप यह tputदेखने के लिए कमांड का उपयोग कर सकते हैं कि आपके टर्मिनल पर प्रत्येक फंक्शन की के लिए कौन से सीक्वेंस एप्लिकेशन की उम्मीद है। ये क्रम terminfoडेटाबेस में संग्रहीत हैं । उदाहरण के लिए, नीचे दिए गए शेल स्निपेट प्रत्येक फ़ंक्शन कुंजी के अनुरूप एस्केप अनुक्रम दिखाता है।

$ for x in {1..12}; do echo -n "F$x "; tput kf$x | cat -A; echo; done
F1 ^[OP
F2 ^[OQ
F3 ^[OR
F4 ^[OS
F5 ^[[15~
F6 ^[[17~
F7 ^[[18~
F8 ^[[19~
F9 ^[[20~
F10 ^[[21~
F11 ^[[23~
F12 ^[[24~

फ़ंक्शन कुंजी के लिए एस्केप सीक्वेंस देखने का दूसरा तरीका एक टर्मिनल एप्लिकेशन में Ctrl+ को प्रेस Vकरना है जो Ctrl+ Vकुंजी (जैसे शेल) को रीबाइंड नहीं करता है । Ctrl+ Vअगले चरित्र को सम्मिलित करता है (जो बच चरित्र होगा) शाब्दिक रूप से, और आप शेष अनुक्रम को देख पाएंगे, जिसमें साधारण वर्ण शामिल हैं।

चूंकि अनुक्रम टाइप करने के लिए अजीब हो सकते हैं, अपने आवेदन में कुंजी बाइंडिंग को बदलने या किसी अन्य टर्मिनल एमुलेटर का उपयोग करके जांच करें। इसके अलावा, ध्यान दें कि आपके पास समय सीमा हो सकती है: कुछ अनुप्रयोग केवल भागने के क्रम को पहचानते हैं यदि वे पर्याप्त तेजी से आते हैं, ताकि वे Escअकेले कुंजी को एक अर्थ दे सकें ।


मैं आपकी कमांड प्रदान करने वाली सूची में स्थानांतरित फ़ंक्शन कुंजियों को कैसे जोड़ूं?
ड्रेविको

1
@drevicko On xterm, Shift + F1 है kf13, Shift + F2 है kf14, आदि। फिर Ctrl + F1 है kf25, Ctrl + Shift + F1 है kf37, Alt + F1 है kf49। मुझे नहीं पता कि यह अन्य टर्मिनलों पर काम करता है और न ही अगर आपको वास्तविक एफ 13 कुंजी है तो आपको क्या मिलेगा।
गिल्स एसओ- बुराई को रोकें '

3

जैक पालेविच द्वारा एंड्रॉइड टर्मिनल एमुलेटर फ़ंक्शन कुंजियों सहित विभिन्न प्रकार की कुंजी भेजने के लिए वॉल्यूम कुंजियों के साथ प्रमुख संयोजनों का उपयोग करता है। हैकर का कीबोर्ड भी है जिसमें हर कुंजी उपलब्ध है जो एक असली कीबोर्ड होगा।


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