Pendahuluan
Di sistem Linux, source
adalah perintah shell bawaan yang membaca dan mengeksekusi konten file di shell saat ini. File-file ini biasanya berisi daftar perintah yang dikirimkan ke penerjemah TCL untuk dibaca dan dijalankan.
Tutorial ini akan menjelaskan cara kerja perintah sumber dan kapan menggunakannya.
Prasyarat
- Sistem yang menjalankan distribusi Linux (pelajari cara menginstal Ubuntu 20.04, cara menginstal CentOS 7, atau cara menginstal Arch Linux)
- Akun dengan hak istimewa sudo
- Akses ke jendela terminal/baris perintah
Sintaks Perintah Sumber
sumber perintah menggunakan sintaks berikut:
source [filename] [arguments]
Dimana:
[filename]
:Nama atau jalur ke file yang Anda inginkan untuk dijalankan oleh perintah sumber.[arguments]
:Setiap argumen yang Anda berikan menjadi parameter posisi saat file dieksekusi.
Karakter titik (titik) dapat digunakan sebagai pengganti source
perintah, menghasilkan output yang sama:
. [filename] [arguments]
Contoh Perintah Sumber Linux
Berikut adalah beberapa cara Anda dapat menggunakan source
perintah:
Luluskan Argumen
Buat file teks bernama example.txt di Beranda direktori dengan konten berikut:
pwd
date
time
Gunakan source
perintah untuk meneruskan konten file ini sebagai argumen:
source example.txt
Outputnya menunjukkan bahwa source
perintah bergerak baris demi baris, menjalankan perintah apa pun yang tercantum di example.txt .
Untuk contoh yang lebih kompleks, ubah konten example.txt ke:
echo "The current directory is:"
pwd
echo "Today's date is:"
date
echo "The time is:"
time
Pindahkan file ke Home/source_command/example . Dengan source
perintah, berikan konten file sebagai argumen menggunakan path lengkap ke file:
source source_command/example/example.txt
Baca File Konfigurasi
source
perintah juga memungkinkan Anda untuk membaca variabel dari file. Mulailah dengan membuat file konfigurasi contoh example_config.sh di Beranda direktori dan menambahkan konten berikut:
VAR1="a"
VAR2="b"
VAR3="c"
Buat skrip bash bernama example_bash.sh dan tambahkan berikut ini:
#!/usr/bin/env bash
source example_config.sh
echo "VAR1 is $VAR1"
echo "VAR2 is $VAR2"
echo "VAR3 is $VAR3"
source
perintah mengizinkan example_bash.sh untuk membaca variabel VAR1
, VAR2
, dan VAR3
Anda definisikan di example_config.sh .
Jalankan example_bash.sh skrip menggunakan source
perintah:
source example_bash.sh
Fungsi Sumber
Jika Anda memiliki fungsi yang Anda gunakan di beberapa skrip yang berbeda, Anda dapat menyimpannya sebagai file terpisah dan menggunakan source
perintah untuk merujuknya saat menulis skrip.
Misalnya, mulailah dengan membuat fungsi check_root.sh yang memeriksa apakah pengguna yang menjalankan skrip adalah pengguna root:
check_root() {
if [[ $EUID -ne 0 ]]; then
echo "You must run this script as root"
exit 1
fi
}
Buat skrip bernama example_script.sh dan gunakan source
perintah untuk menyisipkan check_root.sh fungsi:
#!/usr/bin/env bash
source check_root.sh
check_root
echo "This is the root user"
Menjalankan skrip ini sebagai pengguna non-root menghasilkan "You must run this script as root"
sebagai output dan keluar dari skrip:
bash example_script.sh
Menjalankan skrip sebagai pengguna root menunjukkan "This is the root user"
sebagai outputnya:
sudo bash example_script.sh
Segarkan Lingkungan Shell Saat Ini
Untuk contoh ini, kami membuat perintah alias ll
:
alias ll = 'ls -l'
Perintah ini mencantumkan file dalam direktori saat ini menggunakan format yang diperluas:
Namun, perintah ini hanya berfungsi di sesi shell saat ini. Untuk membuatnya permanen, buka bashrc file dengan:
sudo nano ~/.bashrc
Di bawah #some more ls aliases
bagian, tambahkan berikut ini:
alias ll = 'ls -l'
Segarkan lingkungan shell saat ini dengan source
perintah:
source ~/.bashrc