सवाल टर्मिनल दिखाएँ एकाधिक भाषाएँ


काम पर, मुझे डेटाबेस से कनेक्ट करने की आवश्यकता है, और इन डेटाबेस में ऐसे फ़ील्ड होते हैं जिनमें चीनी, रूसी, स्पेनिश, जापानी आदि शामिल हैं। अपने टर्मिनल में उन्हें खींचते समय, मुझे प्रश्न चिह्न मिलते हैं। मुझे पता है कि प्रश्न चिह्नों के बजाय वास्तविक पात्रों को दिखाने का एक तरीका है, लेकिन कैसे?

:~$ locale रिमोट परिणाम पर:

LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

:~$ locale क्लिंट परिणामों पर परिणाम:

LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

4
2018-01-03 18:57


मूल




जवाब:


चेक locale यह सुनिश्चित करने के लिए कि सर्वर पक्ष यूटीएफ -8 या उपयोग कर रहा है लोकेल बदलें यूटीएफ -8 के लिए। फिर यूटीएफ -8 (आईएसओ -885 9 -1 नहीं) का उपयोग करने के लिए अपने एसएसएच क्लाइंट को कॉन्फ़िगर करें। उदाहरण के लिए, पुट्टी का उपयोग करते समय, हमें पुट्टी के चरित्र सेट को सेट करना होगा:

पुट्टी: विंडो-> अनुवाद-> रिमोट कैरेक्टर सेट: यूटीएफ -8

enter image description here

अन्यथा, यह आईएसओ -885 9 -1 का उपयोग करेगा। ए मैक समस्या हल हो गई

वैकल्पिक रूप से, एक MySQL डेटाबेस से कनेक्ट करते समय इस कमांड को चलाने से MySQL क्वेरी से UTF-8 वर्ण आउटपुट होंगे।

set character_set_results=utf8, character_set_client=utf8, character_set_connection=utf8;

4
2018-01-03 19:04



तो यह यूटीएफ -8 का उपयोग कर रहा है, और यह काम नहीं करता है। तो मैंने इन्हें चलाया: sudo cp /usr/share/i18n/SUPPORTED /var/lib/locales/supported.d/local  sudo locale-gen और वह भी काम नहीं किया। - Get Off My Lawn
@RyanNaddy बस टाइप करें locale। अगर रिटर्न है कि यह यूटीएफ -8 का उपयोग कर रहा है, अच्छा! अब क्लाइंट पक्ष को यूटीएफ -8 का उपयोग करने के लिए कॉन्फ़िगर किया जाना चाहिए। कई स्पष्ट कॉन्फ़िगरेशन के बिना ऐसा नहीं करते हैं। आपका ग्राहक क्या है?
वे दोनों यूटीएफ -8 हैं। कृपया अद्यतन प्रश्न देखें। - Get Off My Lawn
इससे कोई फर्क नहीं पड़ता कि क्लाइंट सिस्टम यूटीएफ -8 का उपयोग कर रहा है locale आदेश। एसएसएच क्लाइंट को शायद यूटीएफ -8 का उपयोग करने की आवश्यकता है। (सबसे अधिक इसकी आवश्यकता है।) इसके अलावा: एक MySQL प्रॉम्प्ट पर: mysql> set character_set_results = utf8, character_set_client = utf8, character_set_connection = utf8;
इस आदेश ने इसे ठीक किया: set character_set_results=utf8, character_set_client=utf8, character_set_connection=utf8; - Get Off My Lawn