टीआर (यूनिक्स)

tr यूनिक्स, प्लान 9, इन्फर्नो और यूनिक्स जैसे ऑपरेटिंग सिस्टम में एक कमांड है। यह अनुवाद या लिप्यंतरण का संक्षिप्त रूप है, जो इसके इनपुट डेटा सेट में विशिष्ट वर्णों को बदलने या हटाने के संचालन को दर्शाता है।

अवलोकन
उपयोगिता अपने मानक इनपुट से एक बाइट स्ट्रीम को पढ़ती है और परिणाम को मानक आउटपुट पर लिखती है। कमांड-लाइन तर्क के रूप में, यह वर्णों के दो सेट (सामान्यत: समान लंबाई के) लेता है, और पहले सेट में वर्णों की घटनाओं को दूसरे सेट से संबंधित तत्वों के साथ बदल देता है। उदाहरण के लिए,

tr 'abcd' 'jkmn'

सभी वर्णों को a से j, b से k, c से m, और d से n तक मैप करता है।

वर्ण श्रेणियों का उपयोग करके वर्ण सेट को संक्षिप्त किया जा सकता है। पिछला उदाहरण लिखा जा सकता है:

tr 'a-d' 'jkmn'

पीओएसएईएक्स-संगत संस्करणों में, वर्ण श्रेणी द्वारा दर्शाया गया सेट लोकेल (अभिकलित्र सॉफ़्टवेयर) लोकेल के संयोजन पर निर्भर करता है, इसलिए स्क्रिप्ट में वर्ण श्रेणियों से बचना अधिक सुरक्षित है, जिन्हें उस स्थान से भिन्न लोकेल में निष्पादित किया जा सकता है जिसमें वे लिखे गए थे। रेंज को अधिकांशत: पीओएसएईएक्स कैरेक्टर सेट जैसे [:alpha:] से बदला जा सकता है।

फ्लैग कारण  इसके आउटपुट में समान आसन्न वर्णों के अनुक्रमों को एक टोकन में संपीड़ित करना है। उदाहरण के लिए,

tr -s '\n'

एक या अधिक न्यूलाइन वर्णों के अनुक्रमों को एक ही न्यूलाइन से बदल देता है।

फ्लैग के कारण  इसके इनपुट से वर्णों के निर्दिष्ट सेट के सभी टोकन हटाने के लिए इस स्थिति में, केवल एकल वर्ण सेट तर्क का उपयोग किया जाता है। निम्न आदेश कैरिएज रिटर्न वर्णों को हटा देता है।

tr -d '\r'

फ्लैग वर्णों के पहले सेट के पूरक को इंगित करता है। इन्वोकेशन

tr -cd '[:alnum:]'

इसलिए सभी गैर-अल्फ़ान्यूमेरिक वर्ण हटा देता है।

कार्यान्वयन
का मूल संस्करण डगलस मैक्लेरॉय द्वारा लिखा गया था और इसे संस्करण 4 यूनिक्स में पेश किया गया था।। जीएनयू कोरुटिल्स में बंडल किए गए  का संस्करण जिम मेयरिंग द्वारा लिखा गया था। यह कमांड सामान्य जीएनयू यूनिक्स जैसी उपयोगिताओं के मूल (कम्प्यूटिंग)  विंडोज़ एपीआई  में पोर्टिंग के UnxUtils संग्रह के हिस्से के रूप में  माइक्रोसॉफ़्ट विंडोज़  के लिए एक अलग पैकेज के रूप में उपलब्ध है। यह ओएस-9 शेल में भी उपलब्ध है।    कमांड एमएसएक्स-डॉस संस्करण 2 के लिए एएससीआईआई निगम के एमएसएक्स-डॉस2 टूल्स का भी हिस्सा है।  tr कमांड को IBM i ऑपरेटिंग सिस्टम में भी पोर्ट किया गया है। के अधिकांश संस्करण जीएनयू सहित  और क्लासिक यूनिक्स , एकल-बाइट वर्णों पर काम करते हैं और यूनिकोड के अनुरूप नहीं हैं। एक अपवाद विरासत परियोजना कार्यान्वयन है, जो बुनियादी यूनिकोड समर्थन प्रदान करता है।

रूबी (प्रोग्रामिंग भाषा) और पर्ल में एक आंतरिक tr ऑपरेटर भी है, जो समान रूप से संचालित होता है। टी.सी.एल  का स्ट्रिंग मैप कमांड इस मायने में अधिक सामान्य है कि यह स्ट्रिंग्स को स्ट्रिंग्स में मैप करता है जबकि tr कैरेक्टर्स को कैरेक्टर्स में मैप करता है। रेफरी नाम = TCLManualPage>

यह भी देखें

 * लेकिन
 * यूनिक्स कमांड की सूची
 * जीएनयू कोर यूटिलिटीज

बाहरी संबंध

 * tr(1) – Unix 8th Edition manual page.
 * usage examples at examplenow.com
 * usage examples at examplenow.com
 * usage examples at examplenow.com
 * usage examples at examplenow.com
 * usage examples at examplenow.com
 * usage examples at examplenow.com
 * usage examples at examplenow.com