পিটিটিওয়াইতে নাল অক্ষর প্রদর্শন করুন


3

একটি সার্ভারে চলমান একটি প্রোগ্রাম শূন্য চরিত্রের ( ^A, SOH) দ্বারা সীমাবদ্ধ পাঠ্য ডেটা প্রেরণ করে । আমি যখন পুটিটির মাধ্যমে সেই সার্ভারটি অ্যাক্সেস করি তখন পটিটি নিয়ন্ত্রণের অক্ষরগুলি এড়িয়ে যায়; এটি তার "টার্মিনাল" স্ক্রিনে এগুলি প্রদর্শন করে না not এটি ডেটাটি ব্যাখ্যা করতে খুব শক্ত করে তোলে কারণ একটি ক্ষেত্রটি কোথায় শেষ হয় এবং এর পরেরটি শুরু হয় তা পার্থক্য করা অসম্ভব। যদি আমি পুটিং এর অধিবেশন খোলার লগ ফাইল একটি টেক্সট এডিটরে, সব নিয়ন্ত্রণ অক্ষর দৃশ্যমান। কোনো উপায় আছে আমি পুটিং কনফিগার করতে পারি প্রদর্শন কিছু যখন এটি একটি নিয়ন্ত্রণ চরিত্র পায়? (বার্তাগুলি স্ট্যান্ডার্ড এফআইএক্স প্রোটোকলে রয়েছে , যদি কেউ আগ্রহী হন তবে।)

পুটি কীভাবে বার্তাটি দেখায়:

14 = 200015 = USD17 = 80100009620 = 022 = 129 = 130 = O31 = 158,92788132 = 320037 = 000000000038 = 039 = 140 = 2

ভিআই একই বার্তাটি কীভাবে দেখায়: (vi তে, ^Aএটি পড়া সহজ করে তোলে নীলে দেখায় in)

^ এ 14 = 2000 ^ এ 15 = ইউএসডি ^ এ 17 = 801000096 ^ এ 20 = 0 ^ এ 22 = 1 ^ এ 29 = 1 ^ এ 30 = ও ^ এ 31 = 158.927881 ^ এ 32 = 3200 ^ এ 37 = 0000000000 38 38 = 0 ^ এ 39 = 1 ^ এ 40 = 2

যদি আমি শূন্যস্থানগুলির সাথে নালগুলি প্রতিস্থাপন করি তবে এটি এক নজরে বোঝা যায়:

14 = 2000 15 = মার্কিন ডলার 17 = 801000096 20 = 0 22 = 1 29 = 1 30 = হে 31 = 158.927881 32 = 3200 37 = 0000000000 38 = 0 39 = 1 40 = 2


1
সম্পাদককে খাওয়ানোর আগে আপনি কি তাদের ব্যবহার trবা sedদৃশ্যমান করতে পারবেন না ? ভিম ইনপুট
ফিল্টারও

আমি সম্পাদকীয় ব্যবহার না করেই তাদের আদর্শভাবে শেলটিতে দেখতে চাই। আমি একটি এডিটর দিয়ে লগ ফাইলগুলি খুলতে পারি এবং নাল অক্ষরগুলি দৃশ্যমান হয় যাতে বার্তাগুলি পঠনযোগ্য হয়, তবে কোনও বার্তা প্রেরণ করা হয় এবং এটি লগ করা হয় তা থেকে একটি উল্লেখযোগ্য বিলম্ব হয় এবং আমি প্রায়শই বার্তাগুলি আসার সাথে সাথে তা ব্যাখ্যা করার প্রয়োজন হয় often ...
শৌভিক সাইয়েফ

1
^Aনাল চরিত্র নয়, নাল চরিত্রটি ^@^Aনাল চরিত্রের পরে প্রথম চরিত্র।
ডারথ অ্যান্ড্রয়েড

সুতরাং আমি খুঁজে পেয়েছি প্রোগ্রামটি পরিবর্তন না করে এটি অসম্ভব। 001 হ'ল SOH অক্ষরটি কোনও অক্ষর সেটে প্রদর্শিত হয় না। লগগুলি সংশোধন করার ক্ষেত্রে টিআর কমান্ডটি কৌশলটি করেছে। আপনাকে ধন্যবাদ
শৌভিক সাইফ

উত্তর:


1

অচিহ্নিত অধ্যায়গুলিকে পাঠযোগ্য কিছু দিয়ে প্রতিস্থাপন করুন।

আগে

$ find  -print0
../03.lines./04.lines./02.lines./01.lines$

পরে

$ find  -print0 | sed 's/\0/  /g'
../  3.lines./  4.lines./  2.lines./  1.lines$

0

ব্যবহার করুন stdbuf (থেকে coreutils ) এবং TR :

$ while true; do printf "ASDF\001"; sleep 0.5; done | stdbuf -o0 tr '\001' ' '
ASDF ASDF ASDF ASDF ASDF ...

দ্রষ্টব্য: একটি নতুন লাইনের সাথে প্রতিস্থাপন করার সময় stdbuf এর প্রয়োজন হয় না tr '\001' '\n'

বা, awk / গাওক ব্যবহার করুন

$ while true; do printf "ASDF\001"; sleep 0.5; done | awk 'BEGIN{RS="\001"}; {printf "%s ", $0}'
ASDF ASDF ASDF ASDF ASDF ...

এটি টার্মিনাল নির্বিশেষে কাজ করে। দেখুন কি বাফার উপলব্ধ করা হয় ... আরও তথ্যের জন্য।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.