खोज…


कमांड लाइन से कुछ पर्ल कोड निष्पादित करें

साधारण वन-लाइन कमांड स्विच के रूप में निर्दिष्ट किया जा सकता है -e स्विच का उपयोग करके सोचें ("निष्पादित करें"):

perl -e'print "Hello, World!\n"'

विंडोज उद्धृत नियमों के कारण आप एकल-उद्धृत स्ट्रिंग्स का उपयोग नहीं कर सकते हैं, लेकिन इनमें से एक संस्करण का उपयोग करना होगा:

perl -e"print qq(Hello, World!\n)"
perl -e"print \"Hello, World!\n\""

ध्यान दें कि पुराने कोड को तोड़ने से बचने के लिए, Perl 5.8.x तक उपलब्ध सिंटैक्स का उपयोग -e साथ किया जा सकता है। कुछ भी नया उपयोग करने के लिए आपका पर्ल संस्करण समर्थन कर सकता है, इसके बजाय -E उपयोग करें। उदाहरण के लिए उपयोग करने के लिए say उपलब्ध 5.10.0 से प्लस यूनिकोड 6.0 पर> = v5.14.0 से (भी उपयोग करता -CO सुनिश्चित करने के लिए STDOUT प्रिंट UTF-8):

5.14.0
perl -CO -E'say "\N{PILE OF POO}"'

विंडोज वन-लाइनर्स में दोहरे-उद्धृत स्ट्रिंग्स का उपयोग करना

विंडोज़ कमांड लाइन मापदंडों को लपेटने के लिए केवल दोहरे उद्धरण चिह्नों का उपयोग करता है। पर्ल वन-लाइनर में दोहरे उद्धरण चिह्नों का उपयोग करने के लिए (यानी एक प्रक्षेपित चर के साथ एक स्ट्रिंग मुद्रित करने के लिए), आपको उन्हें बैकस्लैश के साथ बचना होगा:

perl -e "my $greeting = 'Hello'; print \"$greeting, world!\n\""

पठनीयता में सुधार के लिए, आप एक qq() ऑपरेटर का उपयोग कर सकते हैं:

perl -e "my $greeting = 'Hello'; print qq($greeting, world!\n)"

एक पैटर्न से मेल खाती प्रिंट लाइनें (PCRE grep)

perl -ne'print if /foo/' file.txt

असंवेदनशील मामला:

perl -ne'print if /foo/i' file.txt

एक प्रतिस्थापन को दूसरे से बदलें (PCRE sed)

perl -pe"s/foo/bar/g" file.txt

या जगह में:

perl -i -pe's/foo/bar/g' file.txt

विंडोज पर:

perl -i.bak -pe"s/foo/bar/g" file.txt

केवल कुछ फ़ील्ड प्रिंट करें

perl -lane'print "$F[0] $F[-1]"' data.txt
# prints the first and the last fields of a space delimited record

CSV उदाहरण:

perl -F, -lane'print "$F[0] $F[-1]"' data.csv

प्रिंट लाइनें 5 से 10

perl -ne'print if 5..10' file.txt

फ़ाइल को अंदर संपादित करें

बिना बैकअप प्रति ( विंडोज पर समर्थित नहीं )

perl -i -pe's/foo/bar/g' file.txt

एक बैकअप कॉपी के साथ file.txt.bak

perl -i.bak -pe's/foo/bar/g' file.txt

बैकअप प्रति के साथ old_file.txt.orig backup उपनिर्देशिका में (बशर्ते मौजूद है):

perl -i'backup/old_*.orig' -pe's/foo/bar/g' file.txt

पूरी फाइल को एक स्ट्रिंग के रूप में पढ़ना

perl -0777 -ne'print "The whole file as a string: --->$_<---\n"'

नोट: -0777 सिर्फ एक सम्मेलन है। कोई भी -0400 और उससे अधिक समान होगा।

फाइल को mojolicious में अपलोड करें

perl -Mojo -E 'p("http://localhost:3000" => form => {Input_Type => "XML", Input_File => {file => "d:/xml/test.xml"}})'

फ़ाइल d:/xml/test.xml पर कनेक्शन सुनने वाले सर्वर पर अपलोड की जाएगी localhost:3000 ( स्रोत )

इस उदाहरण में:

-Mmodule use module; निष्पादित करता है use module; अपना कार्यक्रम निष्पादित करने से पहले
-E commandline का उपयोग प्रोग्राम की एक लाइन दर्ज करने के लिए किया जाता है
यदि आपके पास कोई ojo मॉड्यूल नहीं है तो आप इसे स्थापित करने के लिए cpanm ojo कमांड का उपयोग कर सकते हैं

perldoc perlrun कमांड के उपयोग के बारे में अधिक जानने के लिए या यहाँ पढ़ें



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow