50 Pertanyaan dan Jawaban Wawancara Shell Scripting (2025)
Pertanyaan dan Jawaban Wawancara Skrip Linux Shell
1) Apa itu cangkang?
Shell merupakan antarmuka antara pengguna dan kernel. Meskipun hanya ada satu kernel, suatu sistem dapat memiliki banyak shell yang berjalan secara bersamaan. Jadi, setiap kali pengguna memasukkan perintah melalui keyboard, shell berkomunikasi dengan kernel untuk mengeksekusinya dan kemudian menampilkan output kepada pengguna.
Unduh PDF Gratis: Pertanyaan & Jawaban Wawancara Shell Scripting
2) Apa itu Skrip Shell?
Shell Scripting adalah program komputer sumber terbuka yang dirancang untuk dijalankan oleh shell Unix/Linux. Shell Scripting adalah program untuk menulis serangkaian perintah untuk dieksekusi oleh shell. Itu dapat menggabungkan urutan perintah yang panjang dan berulang ke dalam skrip tunggal dan sederhana yang dapat disimpan dan dijalankan kapan saja sehingga mengurangi upaya pemrograman.
3) Apa saja jenis shell yang umum digunakan pada sistem Linux pada umumnya?
csh,ksh,bash,Bourne . Shell yang paling umum digunakan dan canggih saat ini adalah โBashโ.
4) Apa yang setara dengan shortcut file yang kita punya jendela di sistem Linux?
Pintasan dibuat menggunakan โtautanโ di Linux. Ada dua jenis link yang dapat digunakan yaitu โsoft linkโ dan โhard linkโ.
5) Apa perbedaan antara tautan lunak dan tautan keras?
Tautan lunak adalah tautan ke nama file dan juga dapat berada di sistem file yang berbeda; namun tautan keras adalah tautan ke inode file dan harus berada pada sistem file yang sama dengan file tersebut. Menghapus file asli membuat soft link tidak aktif (link rusak) namun tidak mempengaruhi hard link (Hard link tetap akan mengakses salinan file)
6) Bagaimana Anda meneruskan dan mengakses argumen ke skrip di Linux?
Argumen dapat disampaikan sebagai:
scriptName โArg1โ โArg2โณโฆ.โArgnโ dan dapat diakses di dalam skrip sebagai $1 , $2 .. $n
7) Apa perbedaan antara $* dan $@?
$@ memperlakukan setiap argumen yang dikutip sebagai argumen terpisah tetapi $* akan menganggap seluruh rangkaian parameter posisi sebagai string tunggal.
8) Gunakan perintah sed untuk mengganti konten file (tiru perintah tac)
Misalnya:
if cat fille ABCD EFGH
Maka O/p seharusnya
EFGH
ABCD
sed '1! G; h;$!d' file1
Di sini perintah G ditambahkan ke ruang pola,
perintah h menyalin buffer pola ke buffer penahan
dan perintah d menghapus ruang pola saat ini.
9) Diberikan sebuah file, ganti semua kemunculan kata โABCโ dengan โDEFโ dari 5th baris sampai akhir hanya pada baris yang mengandung kata โMNOโ
sed โn '5,$p' file1|sed '/MNO/s/ABC/DEF/'
10) Diberikan sebuah file, tulis urutan perintah untuk menemukan jumlah setiap kata.
tr โs "(backslash)040" <file1|tr โs "(backslash)011"|tr "(backslash)040 (backslash)011" "(backslash)012" |uniq โc where "(backslash)040" is octal equivalent of "space"
โ(backslash)011โ adalah padanan oktal dari โkarakter tabโ dan
โ(backslash)012โ adalah karakter oktal yang setara dengan karakter baris baru.
11) Bagaimana Anda menemukan 99th baris file hanya menggunakan perintah ekor dan kepala?
ekor +99 file1|kepala -1
12) Cetak 10th baris tanpa menggunakan perintah tail dan head.
sed โn '10p' file1
13) Di bash shell saya, saya ingin prompt saya berformat '$โDirektori kerja saat iniโ:โnama hostโ> dan memuat file yang berisi daftar fungsi yang ditentukan pengguna segera setelah saya masuk, bagaimana Anda akan mengotomatiskannya ?
Di bash shell, kita dapat membuat file โ.profileโ yang secara otomatis dipanggil segera setelah saya masuk dan menulis sintaks berikut ke dalamnya.
export PS1='$ `pwd`:`hostname`>' .File1
Di sini File1 adalah file yang berisi fungsi yang ditentukan pengguna dan โ.โ memanggil file ini di shell saat ini.
14) Jelaskan tentang bit izin โsโ dalam sebuah file?
Bit โsโ disebut bit โset user idโ (SUID).
Bit โsโ pada file menyebabkan proses memiliki hak istimewa dari pemilik file selama program dijalankan.
Misalnya, menjalankan perintah โpasswdโ untuk mengubah kata sandi saat ini menyebabkan pengguna menulis kata sandi barunya ke file bayangan meskipun ia memiliki โrootโ sebagai pemiliknya.
15) Saya ingin membuat direktori sedemikian rupa sehingga siapa pun di grup dapat membuat file dan mengakses file siapa pun di dalamnya tetapi tidak ada yang bisa menghapus file selain yang dibuat sendiri.
Kita dapat membuat direktori yang memberikan akses baca dan eksekusi ke semua orang di grup dan menyetel bit "t" yang lengket sebagai berikut:
mkdir direc1 chmod g+wx direc1 chmod +t direc1
16) Bagaimana cara mengetahui berapa lama sistem telah berjalan?
Kita dapat menemukannya dengan menggunakan perintah โuptimeโ.
17) Bagaimana cara pengguna mengetahui semua informasi tentang pengguna tertentu seperti shell default, nama sebenarnya, direktori default, kapan dan berapa lama dia telah menggunakan sistem?
jari โloginNameโ โฆdi mana loginName adalah nama loginnya
pengguna yang informasinya diharapkan.
18) Apa perbedaan antara $$ dan $!?
$$ memberikan id proses dari proses yang sedang dijalankan sedangkan $! Menampilkan id proses dari proses yang baru-baru ini masuk ke latar belakang.
19) Apa yang dimaksud dengan proses zombie?
Ini adalah proses yang telah mati namun status keluarnya masih belum diambil oleh proses induk. Proses-proses ini meskipun tidak berfungsi masih memiliki entri id prosesnya di tabel proses.
20) Bagaimana cara menyalin file dari satu mesin ke mesin lainnya?
Kita dapat menggunakan utilitas seperti โftp,โ โscpโ atau โrsyncโ untuk menyalin file dari satu mesin ke mesin lain.
Misalnya, Menggunakan ftp:
Nama host FTP
> masukkan file1
> sampai jumpa
Salinan di atas, file file1 dari sistem lokal ke sistem tujuan yang nama hostnya ditentukan.
Pertanyaan dan Jawaban Wawancara Shell Scripting untuk Berpengalaman
21) Saya ingin memantau file log yang terus diperbarui, perintah apa yang dapat digunakan untuk mencapai hal ini dengan paling efisien?
Kita dapat menggunakan tail โf namafile. Ini akan menyebabkan hanya 10 baris terakhir default yang ditampilkan pada std o/p yang terus-menerus menampilkan bagian pembaruan file.
22) Saya ingin terhubung ke server jarak jauh dan menjalankan beberapa perintah, bagaimana cara mencapainya?
Kita dapat menggunakan ssh untuk melakukan ini:
ssh nama pengguna@serverIP -p sshport
Example
ssh root@122.52.251.171 -p 22
Setelah perintah di atas dijalankan, Anda akan diminta memasukkan kata sandi
23) Saya memiliki 2 file dan saya ingin mencetak catatan yang sama untuk keduanya.
Kita dapat menggunakan perintah โcommโ sebagai berikut:
comm -12 file1 file2 โฆ 12 akan menyembunyikan konten yang ada
unik untuk 1st dan 2nd berkas masing-masing.
24) Tulis skrip untuk mencetak 10 elemen pertama deret Fibonacci.
#!/bin/sh a=1 b=1 echo $a echo $b for I in 1 2 3 4 5 6 7 8 do c=a b=$a b=$(($a+$c)) echo $b done
25) Bagaimana Anda terhubung ke server database dari Linux?
Kita dapat menggunakan utilitas isql yang disertakan dengan driver klien terbuka sebagai berikut:
isql โS nama server โU nama pengguna โP kata sandi
26) Apa saja 3 aliran standar di Linux?
0 โ Masukan Standar1 โ Keluaran Standar2 โ Kesalahan Standar
27) Saya ingin membaca semua input ke perintah dari file1 mengarahkan semua output ke file2 dan kesalahan ke file 3, bagaimana saya bisa mencapainya?
memerintah file1 1>file2
28) Apa yang akan terjadi pada proses saya saat ini ketika saya menjalankan perintah menggunakan exec?
โexecโ melapisi proses yang baru bercabang pada proses saat ini; jadi ketika saya menjalankan perintah menggunakan exec, perintah tersebut dieksekusi pada shell saat ini tanpa membuat proses baru.
Misalnya, Eksekusi "exec ls"
pada command prompt akan mengeksekusi ls dan setelah ls keluar, proses akan dimatikan
29) Bagaimana Anda meniru wc โl menggunakan awk?
awk 'END {print NR} fileName'
30) Diberikan sebuah file, carilah jumlah baris yang mengandung kata โABCโ.
grep โc โABCโ file1
31) Apa perbedaan antara grep dan egrep?
egrep adalah Extended grep yang mendukung fitur grep tambahan seperti โ+โ (1 atau lebih kemunculan karakter sebelumnya),โ?โ(0 atau 1 kemunculan karakter sebelumnya) dan โ|โ (pencocokan alternatif)
32) Bagaimana cara mengatur array di Linux?
Sintaks dalam ksh:
Set โA arrayname= (element1 element2 โฆ.. element) In bash A=(element1 element2 element3 โฆ. elementn)
33) Tuliskan sintaks perulangan โforโ.
sintaks:
for iterator in (elements) do execute commands done
34) Bagaimana Anda mengetahui total ruang disk yang digunakan oleh pengguna tertentu?
du -s /home/user1 โฆ.di mana user1 adalah pengguna yang memerlukan total ruang disk.
35) Tulis sintaks untuk kondisional โjikaโ di Linux?
Sintaksis
If condition is successful then execute commands else execute commands fi
36) Apa pentingnya $?
Perintah $? memberikan status keluar dari perintah terakhir yang dijalankan.
37) Bagaimana cara menghapus semua baris kosong dalam sebuah file?
sed '^ [(backslash)011(backslash)040]*$/d' file1
dimana (garis miring terbalik)011 adalah padanan oktal dari ruang dan
(garis miring terbalik)040 setara dengan oktal tab
38) Bagaimana cara menyisipkan baris โABCDEFโ di setiap 100th baris file?
sed berkas '100i\ABCDEF'1
39) Tulis urutan perintah untuk menemukan semua file yang dimodifikasi dalam waktu kurang dari 2 hari dan cetak jumlah catatan masing-masing file.
menemukan . โwaktu -2 โexec wc โl {} \;
40) Bagaimana cara menetapkan izin rwx default untuk semua pengguna di setiap file yang dibuat di shell saat ini?
Kita bisa gunakan:
umask 777
Ini akan menetapkan izin rwx default untuk setiap file yang dibuat untuk setiap pengguna.
41) Bagaimana kita bisa menemukan nama proses dari id prosesnya?
Kita dapat menggunakan "ps โp ProcessId"
42) Apa saja empat komponen dasar setiap sistem file di Linux?
Bootblock, super block, inode block, dan Datablock merupakan komponen fundamental dari setiap sistem file di Linux.
43) Apa itu blok boot?
Blok ini berisi program kecil bernama โMaster Boot Recordโ (MBR) yang memuat kernel saat boot sistem.
44) Apa itu blok super?
Blok super berisi semua informasi tentang sistem file seperti ukuran sistem file, ukuran blok yang digunakan, jumlah blok data bebasnya, dan daftar inode gratis dan blok data.
45) Apa itu blok inode?
Blok ini berisi inode untuk setiap file sistem file beserta semua atribut file kecuali namanya.
46) Bagaimana saya dapat mengirim email dengan file terkompresi sebagai lampiran?
zip file1.zip file1|mailx โs โsubjectโ ID email penerima
Konten email
EOF
47) Bagaimana cara membuat alias perintah di shell?
alias Aliasname=โPerintah yang aliasnya akan dibuatโ.
48) Apa yang dimaksud dengan bidang izin โcโ dan โbโ pada suatu file?
โcโ dan โbโ bidang izin umumnya dikaitkan dengan file perangkat. Ini menentukan apakah suatu file adalah file karakter khusus atau file khusus blok.
49) Apa gunanya tali shebang?
Garis shebang di bagian atas setiap skrip menentukan lokasi mesin yang akan digunakan untuk menjalankan skrip.
Pertanyaan wawancara ini juga akan membantu dalam viva Anda (lisan)