Soal 1Apa yang ditentukan oleh #!/bin/sh di baris pertama sebuah shell script?
Shell Script Pertamamu — Membuat dan Menjalankannya
Buat shell script di vi, tambahkan #!/bin/sh, beri izin eksekusi dengan chmod +x, lalu jalankan dengan ./hello.sh. Visual dan praktik di browser.
Membuat Script — vi dan #!/bin/sh
Sebuah shell script mengumpulkan perintah yang biasa kamu ketik di terminal ke dalam satu file sehingga kamu bisa menjalankannya sekaligus.
Alih-alih mengetik langkah-langkah yang sama dengan tangan setiap kali, kamu menuliskannya ke dalam file, dan kamu bisa mengulang pekerjaan yang sama secara akurat sebanyak yang kamu mau.
Di sini kamu akan belajar dasar-dasar membuat dan menjalankan shell script.
Buka file dengan vi hello.sh, tekan i untuk masuk ke mode insert lalu ketik isinya, kemudian tekan Esc dan simpan serta tutup dengan :wq (operasi dasar vi sama seperti yang kamu pelajari sebelumnya).
Jadikan baris pertama #!/bin/sh, sebuah shebang, yang menentukan shell mana yang menjalankan script.
Baris yang diawali dengan # diabaikan saat dijalankan sebagai komentar.
Satu-satunya pengecualian adalah baris pertama: meskipun #!/... diawali dengan #, itu bukan komentar — ia diinterpretasikan secara khusus sebagai arahan tentang shell mana yang akan menjalankannya.
vi hello.sh menghasilkan -rw-r--r-- (tanpa x); chmod +x mengubahnya menjadi -rwxr-xr-x (dengan x), dan ./hello.sh menjalankannya. Bagian tengah menunjukkan pengecekan dengan ls -l.| Sintaks | Arti | Contoh |
|---|---|---|
vi f | Buka file di editor (buat jika belum ada) | vi hello.sh |
i … Esc | Tulis isi di mode insert, Esc kembali ke mode normal | Tekan i … Esc |
:wq | Simpan dan keluar dari vi | :wq |
#!/bin/sh | Shebang di baris pertama (menentukan shell yang menjalankan) | #!/bin/sh |
# comment | Baris penjelasan yang diabaikan saat dijalankan | # create backup |
chmod +x f | Tambahkan izin eksekusi ke sebuah file | chmod +x hello.sh |
./f | Jalankan script di direktori saat ini | ./hello.sh |
>> f | Menambahkan (append) ke akhir file (tanpa menimpa) | date >> run.log |
vi note.sh # buka script di editor
# tekan i untuk masuk ke mode insert dan tulis:
# #!/bin/sh
# # show a short message
# echo "build step 1"
# echo "build step 2"
# tekan Esc lalu simpan dan keluar dengan :wq
chmod +x note.sh # tambahkan izin eksekusi
./note.sh # mencetak build step 1 / build step 2
Menjalankannya — chmod +x dan ./
File yang baru saja kamu buat tidak bisa langsung dijalankan apa adanya.
Begitu kamu menambahkan izin eksekusi dengan chmod +x file, kamu bisa menjalankannya dalam bentuk ./file.
./ adalah cara untuk merujuk ke file di direktori saat ini; tanpa itu, shell hanya mencari perintah di dalam PATH dan tidak akan menemukannya.
vi greet.sh # buka di editor, tulis #!/bin/sh dan echo hi, simpan dengan :wq
ls -l greet.sh # belum ada izin eksekusi
chmod +x greet.sh # tambahkan izin eksekusi
ls -l greet.sh # sebuah x muncul di tepi kiri
./greet.sh # mencetak hi
Ada juga cara menjalankannya tanpa izin eksekusi
Ketika kamu ingin menjalankannya tanpa menambahkan izin eksekusi, ada juga cara menyerahkan file ke sebuah shell, seperti sh file.
Di kursus ini kita memakai bentuk dasar menambahkan izin eksekusi dan menjalankan dengan ./file.
Kamu bisa memeriksa apakah izin eksekusi telah ditambahkan dari apakah sebuah x muncul di tepi kiri ls -l.
Membuat Tool Kecil yang Mencatat Eksekusi
Alur membuat, memberi izin, dan menjalankan yang kamu pelajari bisa langsung dipakai pada tool kecil di dunia nyata.
Di sini kamu akan membuat tool pencatat log yang menambahkan "kapan script dijalankan" ke satu file log.
Ketika kamu menambahkan dengan >>, baris menumpuk setiap kali kamu menjalankannya, sehingga kamu bisa melihat kembali riwayat eksekusi nanti.
date >> run.log dan tampilan cat run.log, dan setiap pengulangan menumpuk satu baris lagi di run.log.Cek Pemahaman
Jawab setiap pertanyaan satu per satu.
Soal 2Perintah mana yang menambahkan izin eksekusi ke script yang kamu buat?
Soal 3Mana cara menjalankan hello.sh di direktori saat ini?