Thursday, October 9, 2014

program untuk mengecek diantara jam berapakah jam sekarang ini

halo, pada kesempatan kali ini saya akan menunjukan salah satu aplikasi trivial yang baru saya buat beberapa jam yang lalu, yaitu program untuk mengecek diantara jam berapakah jam sekarang ini. contohnya: jika ja sekarang adalah 01:34:10 maka ia berada diantara jam 01:00:00 dan 02:00:00.

baik langsung saja inilah cara membuat program tersebut:
  1.  buatlah document txt dan letakan di folder home/ folder (saya menyimpan di folder home) manapun juga tidak masalah. isi dokumen txt tersebut adalah sebagai berikut
    00:00:00
    01:00:00
    02:00:00
    03:00:00
    04:00:00
    05:00:00
    06:00:00
    07:00:00
    08:00:00
    09:00:00
    10:00:00
    11:00:00
    12:00:00
    13:00:00
    14:00:00
    15:00:00
    16:00:00
    17:00:00
    18:00:00
    19:00:00
    20:00:00
    21:00:00
    22:00:00
    23:00:00
  2. Setelah itu langsung di save dan berikan nama sesuai yang anda inginkan (saya memberikan nama dokumen tsb timetime.txt)
  3. Lalu kita akan mulai bermain dengan bash scripting. buatlah dokumen sh dan berikan nama dokumen tersebut sesuai dengan yang anda inginkan (saya menggunakan nama badak.sh):
    1. deklarasikan variabel tanggal dan waktu terlebih dahulu, seperti pada tulisan yang di blok pada gambar berikut dan jangan lupa untuk membuat variable penampung untuk menampung jam yang sekarang
    2. lalu buatlah folder baru dengan mkdir dengan nama berupa tanggal pada waktu sekarang, jangan lupa menambah -p karena kita hanya akan membuat folder tersebut sekali saja dalam sehari. lalu copykan file txt yang telah anda buat di tahap paling pertama menuju ke folder yang telah dibuat tersebut dan ubahlah namanya dengan waktu sekarang, jangan lupa untuk menggantikan hak aksesnya dengan chmod
    3.  lalu "execute" file yang telah tercopy tsb dengan perintah exec < pathfile/namafile (punya saya exec< /home/stankey/$tgl$bln$thn/$jam:$mnt:$dt ) namun didahului dengan exec 6<&0 terlebih dahulu, lalu deklarasikan array dengan syntax "declare -a (nama)" dengan indexnya.

    4. setelah itu mulai masuk kedalam perulangan dengan membaca string dalam file tersebut perbaris, masukan hasil bacaan tersebut kedalam array yang telah dibuat lalu ambilah 2 angka depanya saja untuk dibandingkan dengan jam yang sekarang(${array[$index]:0:2}) apabila jam sekarang sama dengan jam pada file tersebut (menit dan detik tidak termasuk) maka jam pada file tersebut akan diberi tanda "waktu sekarang ada diantara waktu yang ditunjuk hingga bawahnya" cara menggantikan kata tersebut adalah dengan perl, perl adalah fungsi untuk menukarkan kata2. lalu setelah itu untuk jam berikutnya adalah batas atas dari jam tersebut, maka 1 jam berikutnya diberikan kata"maksudnya adalah ini". namun jika jam sekarang sudah 23 maka akan ditambah dengan kata "waktu sekarang ada diantara waktu yang ditunjuk hingga 00:00:00 hari berikutnya" tanpa memberi tahu batas waktu atasnya dimana.
    5. setelah itu tutuplah semua fungsi if, while dan exec dengan fi, done dan exec 0<&6 6<&-. dan scripting telah selesai.
  4.   apabila ingin melakukan bash ini berulang2 anda bisa menggunakan crontab. bukalah terminal linux dan ketik crontab -e maka anda akan tiba di screen berikut.
  5. agar bash berjalan setiap satu jam maka isikan * */1 * * * (path script anda). note: untuk setiap waktu lainya bisa dilihat di teori crontab, saya sudah lampirkan teori tersebut berupa post sebelum ini.
  6. selesai. berikut adalah hasil programnya

  Sekian dan semoga bermanfaat. :)

No comments:

Post a Comment