MasRud.com

Membuat perintah bash untuk tugas berulang pada Linux

Gambar ilustrasi

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 saya 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 Anda 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 saya akan mem-backup website cukup mengetikkan perintah backup saja.

Mudah bukan?

Pada penjabaran di atas, saya menggunakan contoh cara membackup 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.

Tulisan lainnya

Linux permission Mengubah permission file dan folder secara massal pada Linux Ada hal penting yang baru saya sadari ketika membuka file aplikasi lama yang sudah online. Saya … Mod rewrite apache Tutorial mengaktifkan mod_rewrite Apache web server Setelah kita berhasil menginstall Apache web server dan kawan-kawan pada Linux Ubuntu, hal … Linux commands Kumpulan perintah dasar linux untuk pemula Pengguna Linux pasti tidak asing dengan yang namanya perintah/command line. Perintah/command line … The requested URL not found Memperbaiki error "the requested URL not found on this server" Apache Linux Ketika pertama kali menjadikan Linux dan Apache sebagai web server biasanya kita akan menjumpai …