বাইনারি ক্যাটিংয়ের পরে হ্যাশ প্রতীক (#) পাউন্ড প্রতীক (£) এ পরিণত হয়


42

আমার বাশ প্রম্পটটি দেখতে দেখতে এভাবেই ব্যবহৃত হত।

পুরানো বাশ প্রম্পট

তারপরে আমি এমন কিছু করেছি যা সম্ভবত এত স্মার্ট ছিল না, আমি করেছি cat /bin/bash। এবং এখন আমার বাশ প্রম্পটটি হ্যাশ প্রতীক (#) এর পরিবর্তে পাউন্ড প্রতীক (£) সহ এইরকম দেখাচ্ছে। এটি ফাইলগুলির মধ্যে হ্যাশ চিহ্নগুলিকে এমনকি প্রভাবিত করে, এখানে দেখুন:

ফাইলগুলিতে পাউন্ড চিহ্ন

কোনও আইডিয়া কীভাবে এটিকে ফেরাবেন?

সম্পাদনা: এই প্রশ্নটি "আমার বাশ প্রম্পটটি কীভাবে পরিবর্তন করবেন?" জিজ্ঞাসা করে না, তবে "আমার ব্যাশ প্রম্পট নিজেই পরিবর্তিত হয়েছে, আমি কীভাবে এটি পুনরুদ্ধার করতে পারি?"

.bashrcযারা আগ্রহী তাদের জন্য সম্পূর্ণ করুন



1
(সমস্যাটি কী ঘটেছে তা সামনে আনার জন্য আমি শিরোনাম সম্পাদনা করার স্বাধীনতাটি গ্রহণ করেছি Edit সম্পাদনা করুন বা আপনার পছন্দ মতো পুনরায় ফিরিয়ে দিন))
ইলক্কাচু

9
প্রম্পট, ফাইল ইত্যাদি এখনও চরিত্র কোড সম্বলিত #, \x23; টার্মিনালটি এখন এটি ব্যাখ্যা \x23করে £
ডেলটাব

4
মজার অংশটি হ'ল আমেরিকান (এবং সম্ভবত অন্যান্য জাতীয়তা?) ইংরাজীতে হ্যাশ প্রতীকটির অন্য নাম "পাউন্ড" ... ...)
jpmc26

1
এটি কোন টার্মিনাল প্রোগ্রামে করা হয়েছিল?
স্নোরিংফ্রাগ

উত্তর:


102

টার্মিনালটি কমান্ড কমান্ড হিসাবে বিভিন্ন চরিত্রের ক্রমগুলি গ্রহণ করে এবং সম্পাদন করে। উদাহরণস্বরূপ, সমস্ত কার্সার চলাচলগুলি সেগুলি ব্যবহার করে করা হয়। কিছু কোড স্থায়ী পরিবর্তন করে যেমন রঙ নির্ধারণ করা বা টার্মিনালটিকে বিকল্প চরিত্র সেট ব্যবহার করতে বলা telling এক্সিকিউটেবল এবং অন্যান্য বাইনারি ফাইলগুলি বাইটগুলি ভালভাবে ধারণ করতে পারে যা এই কমান্ডগুলিকে উপস্থাপন করে, তাই বাইনারি ফাইলগুলিকে টার্মিনালে ফেলে দেওয়ার ফলে বিরক্তিকর পার্শ্ব প্রতিক্রিয়া হতে পারে। কিছু নিয়ন্ত্রণ কোডের জন্য এখানে উদাহরণস্বরূপ দেখুন ।

এর historicalতিহাসিক পটভূমিটি হ'ল মূলত, টার্মিনালগুলি বরং একটি পর্দা এবং কীবোর্ডযুক্ত বোবা ডিভাইস ছিল এবং তারা সিরিয়াল পোর্টের মাধ্যমে প্রকৃত কম্পিউটারের সাথে সংযুক্ত হয়েছিল। তার আগে, তারা কীবোর্ড সহ প্রিন্টার ছিল। কমান্ড বাইট থেকে ডেটা বাইট আলাদা করার মতো প্রোটোকল খুব বেশি ছিল না, সুতরাং কমান্ডগুলি টার্মিনালে "ইনলাইন" দেওয়া হয়েছিল। (বা বরং, এস্কেপ কোডগুলি এবং নিয়ন্ত্রণের অক্ষরগুলি হ'ল প্রোটোকল)) কেউ ধরে নিতে পারে যে আজ যদি এই ব্যবস্থাটি তৈরি করা হত তবে ডেটা এবং কমান্ডের মধ্যে আরও স্পষ্ট বিভাজন হতে পারে।

কেবলমাত্র টার্মিনাল উইন্ডোটি বন্ধ করার বা এমুলেটরটিকে হত্যা করার পরিবর্তে আপনি resetকমান্ডটি ব্যবহার করতে পারেন যা টার্মিনালটি স্নেহ পূর্বনির্ধারিত করতে পুনরায় সেট করতে অনুরূপ কমান্ড (বা বেশ কয়েকটি) প্রেরণ করে।

আমি জানি না ঠিক কী কারণে হ্যাশটিকে পাউন্ড পরিবর্তন হতে পারে। (তবে @ র্যান্ডম 832 করেন, তাদের উত্তর দেখুন )) আমি "বিকল্প চরিত্র সেট" এর সাথে আরও বেশি পরিচিত, যা সমস্ত অক্ষরকে লাইন-অঙ্কন গ্লাইফগুলিতে রূপান্তর করতে পারে। এমনকি যদি এটি ঘটে, কীবোর্ড থেকে ইনপুটটি সাধারণত অপরিবর্তিত হয়ে যায়, তাই resetEnterঅক্ষরগুলি আবর্জনা হিসাবে প্রদর্শিত হয় বা একেবারে না হলেও লেখালেখি এখনও কাজ করে। (আপনার প্রম্পটকে একগুচ্ছ রেখায় রূপান্তরিত করার তুলনায় আপনি কেবল একটি সামান্য প্রভাব পেয়েছেন))


1
বিস্তারিত ব্যাখ্যার জন্য আপনাকে ধন্যবাদ। প্রয়োজনীয় খ্যাতি পাওয়ার সাথে সাথে আমি ভোট দিয়ে যাব।
lhermann

2
আমি যখন প্রথম প্রথম cat /dev/urandomদেবিয়ান ইনস্টলেশন কনসোলে চেষ্টা করেছি (স্ক্রিন রেজোলিউশনগুলি যা ব্রিকড হার্ডওয়ারকে মনে রাখে) তখন আমি ভেবেছিলাম যে আমি একটি ওভারফ্লো ট্রিগার করব এবং দ্রুত "সমস্ত পরিবর্তন ত্যাগ, পুনরায় মেশিন পুনরায় চালু করুন" বোতামে নেভিগেট করব। এখন আমি জানি এটি একটি "উদ্দেশ্যযুক্ত বৈশিষ্ট্য"।
wizzwizz4

2
এটি historতিহাসিকভাবে উদ্দিষ্ট বৈশিষ্ট্য যা এখনই অনাকাঙ্ক্ষিত। কিছু (সমস্ত ভাল) টার্মিনাল এমুলেটরগুলি কোনও ইউটিএফ -8 পরিবেশে চলাকালীন উত্তরাধিকার চরিত্র-সেট-স্যুইচ পালাতে অক্ষম করা উচিত, তবে তারা তা করে কিনা, এবং কীভাবে আপনি বিকল্পটি এটি ডিফল্ট না হলে কীভাবে সক্রিয় করবেন তা দুর্বল নথিযুক্ত এবং পরিবর্তিত হয়।
আর ..

78

রেকর্ডটির জন্য, কেন এমনটি হয়েছিল এবং কীভাবে এটি টার্মিনালটি বন্ধ না করে স্থির করা যেতে পারে (এবং যদি resetব্যর্থ হয়) এর উত্তর দিতে:

অনেকগুলি টার্মিনাল সমর্থন করে, ভিটি 220 টার্মিনালগুলি যেমন তারা অনুকরণ করছে তার বৈশিষ্ট্য হিসাবে, আইএসও 646 এবং আইএসও 2022 এর ভিত্তিতে প্রচুর জাতীয় প্রতিস্থাপনের অক্ষর সেট করে । বিশেষত, এটি অন্য কোনও কারণে সমর্থিত না হওয়া সত্ত্বেও খুব সাধারণ, তাদের পক্ষে ব্রিটিশ চরিত্রের সেটটি সমর্থন করার জন্য, যার পাউন্ড মুদ্রার চিহ্ন একই অবস্থানে যেখানে ASCII এর নম্বর সাইন রয়েছে।

সুতরাং, যখন আপনি টার্মিনালে একটি বাইনারি ফাইল মুদ্রণ করেন, এটি কিছু কাকতালীয়ভাবে টার্মিনালে ক্রম ESC ( A[বা সম্ভবত ESC ) Aএবং ^N] আউটপুট করে । এটি ক্রমটি মুদ্রণের মাধ্যমে ম্যানুয়ালি পূর্বাবস্থায় ফেলা যায় যা এটিকে স্বাভাবিক স্থিতিতে সেট করে:

printf '\e(B\e)0\x0f'

আমি বিশদ বিবরণ না জেনে এরকম কিছু অনুমান করেছি। ব্যাখ্যা করার জন্য আপনাকে ধন্যবাদ. আপনার মতো লোকদের আশেপাশে পাওয়া কত দুর্দান্ত!
lhermann

1
ওহে প্রিয়, Ä এবং Ö এর জায়গায় সিগলগুলি ... এবং ওএস এক্স-এ টার্মিনাল এমনকি প্রতিস্থাপনকে সমর্থন করে 2016 সালে I
ইলকচাছ

@ ইলক্কাচু এমন কয়েকটি টার্মিনাল যা অন্যথায় তাদের সমর্থন করে (আমি পুট্টিকে জানি, এবং আমি লিনাক্স কনসোলকেও মনে করি) যখন ইউটিএফ -8 ব্যবহার করা হয় তখন সেগুলি প্রত্যাখ্যান করে, কারণ আইএসও ২০২২ বলছে যে অন্যান্য সিকোয়েন্সগুলি (ব্যতীত ESC % @) রাজ্যে থাকাকালীন সমর্থিত হবে না যা ইউটিএফ -8 সমর্থন করতে ব্যবহৃত হয়। সুতরাং তারা শেষ পর্যন্ত ম্লান হতে পারে কারণ লাইন অঙ্কনের জন্য আরও অ্যাপ্লিকেশনগুলি ইউটিএফ -8 ব্যবহার করতে বাধ্য করা হয় [যা এই বৈশিষ্ট্যটির সর্বাধিক ব্যবহৃত প্রকৃত ব্যবহার, অন্যান্য চরিত্রটি বেশিরভাগই অন্তর্ভুক্ত করা হয় কারণ আপনি যখন প্রক্রিয়া প্রয়োগ করেন তখন এটি "মুক্ত" থাকে ]।
র্যান্ডম 832

20
এই পালানোর ক্রমগুলি সহজেই মনে রাখা সহজ: "এ" এর অর্থ ব্রিটিশ, "বি" এর অর্থ "আমেরিকান": ডি
এডমন্ট

8
@ ইগমন্ট আমি এটিতে খনন করেছি, যেমন দেখা যাচ্ছে যে তারা আইএসওতে নিবন্ধিত হয়ে ক্রমানুসারে নির্ধারিত হয়েছে। প্রথম [সাথে সাক্ষাত করুন আন্তর্জাতিক রেফারেন্স সংস্করণ ¤জন্য $] হল @, এবং তারপর ব্রিটিশ সংস্করণ আমেরিকান এক সামনে পেতে ঘটেছে। তাদের সবার তালিকার জন্য itcj.ipsj.or.jp/itscj_english/index.html ml
র্যান্ডম 832

30

টার্মিনালটি বন্ধ করুন এবং একটি নতুন খুলুন।


19
আপনার করা উচিত নয়। প্রশ্নটি বৈধ। কেন কেউ বিশদে এই ঘটনা ঘটেছে তা ব্যাখ্যা করবে। এটি অবশ্যই বাশের একটি গর্ত হতে হবে। এটি £যেমন চাওয়া হয় ঠিক একই কীয়ের নীচে বসে । একরকম বাশে থাকলাম। যাইহোক, আপনি একটি সঠিক ব্যাখ্যার জন্য অপেক্ষা করতে পারেন, বা আপনি যদি আমার উত্তর নিয়ে সন্তুষ্ট হন তবে তা গ্রহণ করতে চেকটি ক্লিক করুন। #AltAlt
টমাসজ

1
বা বরং বাশে নয়, টার্মিনাল প্রোগ্রামে। আমি জিইউআই এর বাইরে একটি কমান্ড লাইনে একই চেষ্টা করেছি এবং এটি চিরতরে লুপ হয়ে যায়।
টমাসজ

5
@ কিলোরেস, প্রশ্নটিতে বলা হয়েছে যে তিনি টার্মিনালটিতে catএড /bin/bashকরার সময় সমস্যাটি উপস্থিত হয়েছিল।
ইলকচাচু

2
এলোমেলো 832 আসলে কী ঘটেছিল তার একটি ভাল ব্যাখ্যা দিয়েছে
10:54

16
এটি ওভারকিল - যদি আপনার অধিবেশনটিতে আপনি কিছু রাখতে চান যা আপনি রাখতে চান? যদি এটি এক্স টার্মিনালের পরিবর্তে কনসোল হয়? resetকাজের জন্য সঠিক সরঞ্জাম।
পেরিসিথিয়ন



7

আপনার টার্মিনালটি বন্ধ এবং পুনরায় খোলার বা পুনরায় খোলার প্রয়োজন নেই! যদিও রিসেট করা কাজ করবে এটি সঠিক উপায় নয়!

আপনাকে কেবল আপনার টার্মিনাল স্ক্রোলব্যাক বাফারটি সাফ / মুছতে হবে । এটি করতে, কেবল নীচের কমান্ডটি ব্যবহার করুন:

$ echo -ne '\0033\0143'

1
আপনার কি এই অলৌকিক ঘটনাটির ব্যাখ্যা আছে?
টমাসজ

1
@ টমাস অবশ্যই হ্যাঁ সাথী। যখন -eকার্যকর হয়, তা চলমান কিছু সিকোয়েন্স আপনার সম্পর্কে পড়তে পারেন চিনতে পারবে man echo, তাদের একজন \0NNNযা অকট্যাল মান NNN সঙ্গে বাইট জন্য দাঁড়িয়েছে। আসলে, আপনাকে আপনার টার্মিনাল সেশনটি পুনরায় সেট করার দরকার নেই, আপনাকে কেবল আপনার স্ক্রোলব্যাক বাফারটি পরিষ্কার করতে হবে। এবং আমি যে আদেশটি বলেছিলাম তা প্রয়োজনীয় কাজটি করবে। উদাহরণস্বরূপ, আপনি যদি ম্যাকোএস এক্স ব্যবহার করেন তবে টার্মিনালটি ব্যবহার করার সময় মেনু বারে একটি সম্পাদনা রয়েছে এবং সেখানে "ক্লিয়ারব্লক সাফ করুন বা ⌥⌘K" হিসাবে একটি বিকল্প রয়েছে।
ফারাজএক্স

5
অনুক্রমটি \033\143হ'ল ইএসসি সি, রিসিট টু ইনিশিয়াল স্টেট : "ভিটি 100 কে তার প্রাথমিক অবস্থায় পুনরায় সেট করুন, অর্থাৎ এটি চালিত হওয়ার পরে তার যে রাষ্ট্রটি রয়েছে This এটি পাওয়ার-আপ স্ব-পরীক্ষার সম্পাদনা এবং আইএনআইটি এইচ-তে সংকেত দেয় সংক্ষেপে জোর দেওয়া হবে। "
ডেলটাব

1
@ দালতাব আমি ইএসসি সম্পর্কে উল্লেখ করতে ভুলে গেছি, মিলিয়ন সাথীকে ধন্যবাদ
ফারাজএক্স

1
@ টমাস যখনই আপনি এমন কোনও ফাইল প্রদর্শনের চেষ্টা করবেন যা প্রদর্শিত হবে না - উদাহরণস্বরূপ বাইনারি ফাইলগুলি - টার্মিনালটি বিজোড় এবং বিশ্রী কাজ করবে। অনেক লিনাক্স ব্যবহারকারী পুনরায় সেট করেন, তবে এটি সর্বোত্তম বিকল্প নয় যেহেতু টার্মিনাল সেশনটি পুনরায় নির্ধারণের প্রয়োজন নেই এবং স্ক্রোলব্যাক বাফার সাফ করার জন্য সমস্ত প্রয়োজন।
ফারাজএক্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.