Membuat perintah bash untuk tugas berulang pada Linux
Ketika menggunakan Linux, kadang kala kita sering melakukan tugas yang berulang-ulang melalui perintah di terminal. Saya sendiri contohnya.
Saya sering memanfaatkan terminal Linux untuk mengakses cPanel dengan SSH dan melakukan backup website menggunakan Git ke Bitbucket. Hal ini saya lakukan hampir setiap hari.
Untuk mem-backup website, hal pertama yang saya lakukan adalah membuka terminal. Kemudian mengakses cPanel dengan perintah ssh user@domain.com
dan memasukkan password.
Setelah berhasil login, kemudian berpindah ke direktori public_html
(direktori website) dengan perintah cd
.
— Baca juga Perintah dasar Linux yang sering digunakan
Kemudian menambahkan semua file website yang akan dibackup dengan perintah git add .
dan dilanjutkan dengan mengetikkan perintah git commit -m "backup website"
untuk melakukan commit.
Setelah itu push ke Bitbucket dengan perintah git push origin master
lalu masukkan password.
Itulah hal yang biasa saya lakukan untuk mem-backup website ke Bitbucket.
Kalau hanya melakukan backup satu minggu atau satu bulan sekali tidak menjadi masalah. Akan tetapi kalau setiap hari melakukan backup pasti tidak efisien karena harus menulis empat perintah secara berulang-ulang.
cd public_html
git add .
git commit -m "backup website"
git push origin master
Untuk mempermudah proses backup tersebut saya membuat perintah bash sederhana untuk meringkas empat perintah di atas menjadi satu perintah saja.
Jadi ketika akan mem-backup website cukup mengetikkan satu perintah saja.
Perintah bash ini sebenarnya adalah sebuah script yang berisi empat perintah sebelumnya sehingga ketika saya menjalankan perintah bash tersebut secara otomatis akan menjalankan empat perintah yang ada di dalamnya.
Berikut panduan membuat perintah bash sederhana. Saya ambil contoh hal yang saya lakukan untuk mem-backup website saya.
- Buat file baru misalnya backup (tanpa ekstensi) lalu simpan di direktori home.
- Lalu isi dengan kode berikut ini:
#!/bin/bash
- Kemudian tambahkan kode yang akan dieksekusi di bawah kode
#!/bin/bash
. Contohnya kode untuk mem-backup website:
cd public_html
git add .
git commit -m "Backup website"
git push origin master
- Jadi hasilnya seperti ini:
#!/bin/bash
cd public_html
git add .
git commit -m "Update website"
git push origin master
- Langkah berikutnya buat file bash tersebut agar dapat dieksekusi (executable) dengan perintah di bawah ini:
sudo chmod +x nama_file
- Karena kita tadi membuat file bash dengan nama backup, maka jadinya seperti ini:
sudo chmod +x backup
- Jika dimintai password, masukkan password yang kita gunakan.
- Langkah terakhir adalah memindahkan file bash tersebut ke dalam direktori bin dengan perintah:
sudo mv lokasi_awal/nama_file lokasi_baru/nama_file
- Karena file bash yang tadi kita buat berada dalam home direktori, maka kita tidak perlu mengetikkan lokasi awal file cukup nama file saja. Jadi perintahnya seperti ini:
sudo mv backup /usr/bin/backup
- Selesai.
Jadi ketika akan mem-backup website, saya cukup mengetikkan perintah backup saja.
Mudah bukan?
Pada penjabaran di atas, saya menggunakan contoh cara mem-backup website ke Bitbucket menggunakan terminal. Kita bisa menambahkan perintah lainnya untuk melakukan tugas yang kita inginkan.
Jadi kita tidak perlu mengetikkan perintah panjang untuk melakukan tugas rutin yang sering dikerjakan secara berulang.