सिंटैक्स में s/foo/bar
, \r
और \n
संदर्भ के आधार पर अलग-अलग अर्थ हैं।
कम:
के लिए foo
:
\ n = newline (लिनक्स पर मैक / मैक, विंडोज पर सीआर + एलएफ)
\ r = गाड़ी वापसी (सीआर)
के लिए bar
:
\ r = newline
\ n = नल बाइट है।
लंबा (ASCII संख्या के साथ):
NUL
= 0x00 = 0 = Ctrl+ @
LF
= 0x0A = 10 = Ctrl+ J
CR
= 0x0D = 13 = Ctrl+M
यहाँ ASCII नियंत्रण वर्णों की एक सूची दी गई है । उन्हें Ctrl+ V, Ctrl+ के माध्यम से विम में डालें ---key---।
बैश या अन्य यूनिक्स / लिनक्स गोले में, बस Ctrl+ टाइप करें ---key---।
बश में Ctrl+ आजमाएँ M। यह हिटिंग के समान है Enter, क्योंकि शेल को पता चलता है कि क्या मतलब है, भले ही लिनक्स सिस्टम लाइन परिसीमन के लिए लाइन फीड का उपयोग करता है।
शाब्दिक को बैश में सम्मिलित करने के लिए, उन्हें Ctrl+ के साथ जोड़ना Vभी काम करेगा।
बैश में प्रयास करें:
echo ^[[33;1mcolored.^[[0mnot colored.
यह ANSI एस्केप सीक्वेंस का उपयोग करता है । सम्मिलित दो ^[
'के माध्यम से एस Ctrl+ V, Esc।
आप Ctrl+ V, Ctrl+ M, भी कोशिश कर सकते हैं Enter, जो आपको यह देगा:
bash: $'\r': command not found
\r
ऊपर से याद है? :>
यह ASCII नियंत्रण वर्ण सूची एक पूर्ण ASCII प्रतीक तालिका से अलग है , जिसमें नियंत्रण वर्ण, जो Ctrlकुंजी (haha) के माध्यम से एक कंसोल / स्यूडोटर्मिनल / विम में डाला जाता है , वहां पाया जा सकता है।
जबकि C और अधिकांश अन्य भाषाओं में, आप आमतौर पर इन 'वर्णों' का प्रतिनिधित्व करने के लिए अष्टक कोड का उपयोग करते हैं।
यदि आप वास्तव में जानना चाहते हैं कि यह सब कहां से आता है: TTY ध्वस्त । यह इस विषय के बारे में सबसे अच्छा लिंक होगा, लेकिन सावधान रहें: ड्रेगन हो।
टी एल; डॉ
आमतौर पर foo
= \n
, और bar
= \r
।