Opsi baris perintah di Perl dapat berguna untuk melakukan tugas yang lebih kecil secara efektif.
Pada artikel ini, mari kita tinjau cara menggunakan opsi baris perintah Perl untuk melakukan tugas-tugas berikut:
- Mengedit konten file
- Menangani pemisah garis
- Periksa kesalahan sintaks
- Muat modul
- Lakukan pengulangan
- Jalankan kode perl
- Setel pemisah baris masukan
- Membagi baris masukan
- dst.,
1. Perl -i Option:Edit isi file
Ini membuka file satu per satu dan mengganti konten dengan STDOUT.
Mari kita gunakan file sample.txt berikut untuk mengubah isinya menjadi huruf besar seperti yang ditunjukkan di bawah ini.
$ cat sample.txt Practical Extraction Report Language $ perl -pi -e “tr/[a-z]/[A-Z]/” sample.txt $ cat sample.txt PRACTICAL EXTRACTION REPORT LANGUAGE
Anda juga dapat membuat cadangan file asli seperti yang ditunjukkan di bawah ini:
$ perl -pi.bak -e “tr/[a-z]/[A-Z]/” sample.txt $ cat sample.txt PRACTICAL EXTRACTION REPORT LANGUAGE $ cat sample.txt.bak Practical Extraction Report Language
Untuk men-debug program Perl, gunakan debugger Perl seperti yang telah kami jelaskan sebelumnya.
2. Perl -l Option:Penanganan pemisah baris
Pemisah baris mengambil nilai oktal sebagai argumen. Berikut adalah beberapa contoh dari beberapa pemisah umum dan nilai oktalnya.
Character Octal Value ========= ========= new line(\n) 012 tab(\t) 011 space 040 & 046
Catatan :gunakan perintah “man ascii” untuk mengetahui nilai oktal untuk semua karakter.
Contoh penggunaan pemisah garis:
$ perl -p -l046 -e “tr/[a-z]/[A-Z]/”; bala Output : BALA&
Juga, lihat 6 fungsi evaluasi Perl untuk bacaan tambahan.
3. Opsi Perl -c:Periksa Kesalahan Sintaks
Option -c mengkompilasi program Anda tanpa menjalankannya untuk memastikan tidak ada kesalahan sintaks dalam program Anda.
$ perl -c sample.pl
4. Opsi Perl -M :Untuk Memuat Modul
Dengan opsi Perl -M, kita dapat memuat modul yang diinginkan seperti yang ditunjukkan di bawah ini.
$ perl -MFile::Copy -e ‘move(“sample.txt”,”/tmp”);’
-m opsi juga memuat modul tetapi tidak mengimpor apa pun. Berikut perbedaannya:
- -MFile::Copy sama dengan “gunakan File::Copy; “
- -mFile::Copy sama dengan “gunakan File::Copy()“
Kami juga membahas tentang Option -M di 20 Tip Pemrograman Perl Pembunuh kami sebelumnya.
5. Opsi Perl -n dan -p:Pengulangan Implisit
Option -n membungkus kode Anda di dalam loop seperti yang ditunjukkan di bawah ini.
while(<>) { # perl code }
Cuplikan berikut menjelaskan hal ini dengan lebih baik.
while(<>) { $_ =~ tr/[a-z]/[A-Z]/; }
Dengan menggunakan -n, kita dapat menulis ulang potongan kode di atas seperti yang ditunjukkan di bawah ini.
$ perl -n -e ‘tr/[a-z]/[A-Z]/;print’
Option -p membungkus kode Anda di dalam loop seperti yang ditunjukkan di bawah ini.
while(<>) { # perl code print; }
Cuplikan berikut menjelaskan hal ini dengan lebih baik.
while(<>) { $_ =~ tr/[a-z]/[A-Z]/; print; }
Dengan menggunakan -p, kita dapat menulis ulang potongan kode di atas seperti yang ditunjukkan di bawah ini.
$ perl -p -e “tr/[a-z]/[A-Z]/”;
Jika Anda mengembangkan banyak kode Perl, Anda harus membaca buku praktik terbaik Perl.
6. Opsi Perl -e:Jalankan kode perl di baris perintah itu sendiri
Program Perl sederhana atau pendek dapat ditulis di baris perintah itu sendiri dengan opsi ini seperti yang ditunjukkan di bawah ini.
$ perl -e “print \”Username : $ENV{USER}”
7. Perl -0 Opsi:Pemisah Catatan Masukan
Menggunakan opsi -0, kita dapat mengubah “pemisah catatan input” dari baris baru ke yang lain seperti yang ditunjukkan di bawah ini.
$ perl -p -0046 -e “tr/[a-z]/[A-Z]/”; bala raja& Output : BALA RAJA&
Dalam contoh di atas, 046 adalah nilai oktal untuk karakter '&'. Jadi, setelah menerima &karakter, Perl menganggapnya sebagai akhir dari sebuah record dan kemudian melakukan operasi translasi.
8. Perl -a Option:Pisahkan baris input
Ini membagi $_ menjadi @F dengan pembatas sebagai spasi.
Contoh berikut menunjukkan opsi -a.
$ cat emp_salary.txt bala 10000 rajesh 12300 kumar 14000 $ perl -n -l012 -a -e ‘print “$F[1]“‘ emp_salary.txt 10000 12300 14000
Secara default, dibutuhkan ruang sebagai pembatas dan melakukan operasi split. Pembatas dapat diubah dengan menggunakan opsi -F seperti yang ditunjukkan di bawah ini.
$ cat emp_salary.txt bala:10000 rajesh:12300 kumar:14000 $ perl -n -l012 -F: -a -e ‘print “$F[1]“‘ emp_salary 10000 12300 14000