Tutorial Scripting (revisi 140703-r01)

Kembali ke Lab 00

  • Mari membuat berkas bernama tanyatutor.txt dan mengisinya dengan teks aaBBcccDdyyXXZZZZ dengan cara di bawah ini:
    $ vi tanyatutor.txt
    i

    aaBBcccDdyyXXZZZZ

    [Esc]
    :wq
  • Mari buat berkas bernama kodetutor dan isi dengan script di bawah ini. Ganti NPM dengan NPM anda dan TOKEN dengan token anda.
    NB: Jika anda bingung, tanda (`) pada script (`expr length $teks`) ada di bawah [Esc], di samping kiri angka 1.
    $ vi kodetutor
    i

    # NPM belajar manipulasi string.
    # Ini adalah comment.
    
    teks=`cat $1`
    echo "$teks"
  • Mari kita ubah hak akses berkas kodetutor sehingga dapat dieksekusi.
    [Esc]
    :wq
    $ chmod 755 kodetutor
  • Jalankan script kodetutor.
    $ ./kodetutor tanyatutor.txt

    aaBBcccDdyyXXZZZZ

    Ternyata script di atas gunanya adalah untuk memasukkan isi berkas tanyatutor.txt ke dalam variabel teks, lalu print isi variabel teks.
  • Sekarang mari kita modifikasi berkas kodetutor sehingga bisa menghitung jumlah karakter yang ada di variabel teks. Buka kembali file kodetutor dan tambahkan perintah berikut :
    $ vi kodetutor
    arahkan kursor ke baris paling bawah.
    A
    [enter]
    

    len=`expr length $teks`
    echo "$len"

    [Esc]
    :wq
    $ ./kodetutor tanyatutor.txt

    aaBBcccDdyyXXZZZZ
    17
  • Kita tambahkan script untuk mengambil karakter dari posisi ke 5 sampai ke 8 (4 karakter). Tambahkan perintah berikut di baris paling bawah dari file kodetutor.
    stringA=`expr substr $teks 5 4`
    echo "$stringA"

    [Esc]
    :wq
    $ ./kodetutor tanyatutor.txt

    aaBBcccDdyyXXZZZZ
    17
    cccD
  • Selanjutnya mari kita tambah script untuk mengambil 5 karakter terakhir. Tambahkan perintah berikut di baris paling bawah dari file kodetutor.
    stringB=`expr "$teks" : '.*\(.....\)'`
    echo "$stringB"

    [Esc]
    :wq
    $ ./kodetutor tanyatutor.txt

    aaBBcccDdyyXXZZZZ
    17
    cccD
    XZZZZ
  • Cari berapa kali substring "cc" dan "ZZ" ada di berkas tanyatutor.txt. Tambahkan perintah berikut di baris paling bawah dari file kodetutor.
    jmlCC=`grep -o cc $1 | wc -w`
    echo "$jmlCC" 
    jmlZZ=`grep -o ZZ $1 | wc -w`
    echo "$jmlZZ"

    [Esc]
    :wq
    $ ./kodetutor tanyatutor.txt

    aaBBcccDdyyXXZZZZ
    17
    cccD
    XZZZZ
    1
    2
  • Sekarang mari kita belajar sedikit aritmatika. Bash Scripting juga dapat mengakomodasi perhitungan. Mari kita tambahkan perhitungan sederhana :
    a=10
    b=2
    echo `expr $a + $b`
    echo `expr $a - $b`
    c=`expr $a \* $b`
    echo "$c" 
    echo `expr $a / $b`
    echo `expr $a - 5`

    [Esc]
    :wq
    $ ./kodetutor tanyatutor.txt

    aaBBcccDdyyXXZZZZ
    17
    cccD
    XZZZZ
    1
    2
    12
    8
    20
    5
    5
  • Pada akhirnya script kodetutor akan berisi seperti ini:
    # NPM belajar manipulasi string.
    # ZCZC TOKEN
    # Ini adalah comment.
    
    teks=`cat $1`
    echo "$teks" 
    len=`expr length $teks`
    echo "$len" 
    stringA=`expr substr $teks 5 4`
    echo "$stringA" 
    stringB=`expr "$teks" : '.*\(.....\)'`
    echo "$stringB" 
    jmlCC=`grep -o cc $1 | wc -w`
    echo "$jmlCC" 
    jmlZZ=`grep -o ZZ $1 | wc -w`
    echo "$jmlZZ" 
    a=10
    b=2
    echo `expr $a + $b`
    echo `expr $a - $b`
    c=`expr $a \* $b`
    echo "$c" 
    echo `expr $a / $b`
    echo `expr $a - 5`
  • Masukkan output script anda ke berkas jawabtutor.txt.
    ./kodetutor tanyatutor.txt > jawabtutor.txt
  • Demikian akhir tutorial scripting.

Kembali ke Lab 00
Kembali ke Wiki