Fungsi dan Argumen dalam Skrip Shell
Atur skrip Anda dengan fungsi yang dapat digunakan kembali, teruskan argumen, kembalikan nilai, dan pahami cakupan variabel dalam Bash.
Fungsi dan Argumen dalam Skrip Shell adalah pelajaran Linux Command Line Mastery gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Linux Command Line Mastery, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Linux Command Line Mastery mencakup 4 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
Why Functions?
You can write variables, conditionals, and loops, but as scripts grow they get repetitive. Functions let you name a block of logic and reuse it, keeping scripts clean and testable.
Defining a Function
A Bash function is a name followed by () and a body in braces. Define it before you call it.
greet() {
echo 'Hello from a function'
}
greetPassing Arguments
Functions receive arguments positionally: $1, $2, and so on. Just like the whole script does.
greet() {
echo "Hello, $1"
}
greet AliceAll Arguments at Once
$@ expands to all arguments and $# gives their count, handy for variadic helpers.
show() {
echo "count: $#"
for a in "$@"; do echo "arg: $a"; done
}
show one two threeReturn Status Codes
return sets an exit status (0-255), where 0 means success. Check it with $?.
is_even() {
if [ $(( $1 % 2 )) -eq 0 ]; then return 0; else return 1; fi
}
is_even 4 && echo evenReturning Real Values
Since return only gives a status, output data with echo and capture it via command substitution.
square() {
echo $(( $1 * $1 ))
}
result=$(square 5)
echo "result is $result"Local Variables
By default Bash variables are global. Use local inside functions to avoid clobbering outer variables.
calc() {
local total=0
for n in "$@"; do total=$(( total + n )); done
echo $total
}
calc 1 2 3 4Functions Calling Functions
Functions can call each other, letting you compose small pieces into larger behavior.
double() { echo $(( $1 * 2 )); }
quad() { double $(double $1); }
quad 3Default Argument Values
Use parameter expansion to supply a fallback when an argument is missing.
greet() {
local name=${1:-World}
echo "Hello, $name"
}
greetA Practical Helper
Functions shine for reusable utilities like logging with a timestamp prefix.
log() {
echo "[INFO] $*"
}
log 'Backup started'
log 'Backup finished'Organizing Scripts
A clean pattern: define all functions at the top, then a main function at the bottom that orchestrates them. This mirrors structured programming.
main() {
echo 'Running main'
}
main "$@"Quick Check
How do you reliably get a computed value back from a Bash function?
Recap
Functions make scripts modular:
- Define with
name() { ... } - Arguments are
$1,$@,$# return= status;echo+$()= valueslocalkeeps variables scoped
Compose small functions and orchestrate them from main.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Fungsi dan Argumen dalam Skrip Shell” gratis?
Ya — teks lengkap “Fungsi dan Argumen dalam Skrip Shell” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Linux Command Line Mastery, upgrade ke CoddyKit PRO. Kursus Linux Command Line Mastery mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Fungsi dan Argumen dalam Skrip Shell”?
Atur skrip Anda dengan fungsi yang dapat digunakan kembali, teruskan argumen, kembalikan nilai, dan pahami cakupan variabel dalam Bash. Kamu berlatih Linux Command Line Mastery dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Linux Command Line Mastery?
Tidak diperlukan pengalaman sebelumnya. Linux Command Line Mastery di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Fungsi dan Argumen dalam Skrip Shell” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Linux Command Line Mastery ini?
Ya. Setiap pelajaran Linux Command Line Mastery menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Variabel, Masukan, dan Keluaran
- Pernyataan Kondisional: `if`, `else`, `case`
- Perulangan: `for`, `while`, `until`
- Fungsi dan Argumen dalam Skrip Shell