Pertanyaan Wawancara Praktis dan Jawaban di Linux Shell Scripting
- 4217
- 672
- John Ratke
Dengan tanggapan luar biasa yang kami dapatkan pada artikel seri wawancara, yang pertama dari jenisnya di situs web Linux How-To dalam bentuk suka, umpan balik dalam komentar serta di alamat email pribadi membuat kami beralih dari satu artikel ke artikel berikutnya artikel.
Berikut adalah tautan ke artikel seri wawancara yang sudah diterbitkan di Tecmint.com, di mana kami telah membahas banyak topik yaitu., FTP, MySQL, Apache, Scripting, Perintah Linux, dll.
Pertanyaan Wawancara Praktis tentang Scripting ShellMelanjutkan ke seri di atas di sini kita datang dengan 5 pertanyaan wawancara Linux yang luar biasa dan jawaban mereka. Anda (tecmint.pembaca com dan pengunjung sering) Dukungan selalu diperlukan untuk membuatnya berhasil.
1. Tulis skrip shell untuk mendapatkan tanggal, waktu, nama pengguna saat ini dan direktori kerja saat ini.
Menjawab : Perintah LOGNAME, Tanggal, siapa saya dan PWD akan mengeluarkan nama pengguna, tanggal dan waktu saat ini, dan direktori kerja saat ini. Hanya menerapkan perintah ini dalam skrip dan membuatnya sedikit interaktif.Sekarang buat file yang dipanggil 'Userstats.SH'dan tambahkan kode berikut ke dalamnya.
#!/bin/bash echo "halo, $ logname" echo "tanggal saat ini adalah 'tanggal'" echo "pengguna adalah 'siapa saya'" echo "direktori saat ini 'pwd'"
Tempatkan izin menjalankan dan jalankan skrip seperti yang ditunjukkan di bawah ini.
# chmod 755 userstats.SH # ./userstats.SH
Output sampel
Halo, AVI Tanggal saat ini adalah SAT 7 Jun 13:05:29 IST 2014 Pengguna adalah AVI PTS/0 2014-06-07 11:59 (: 0) Direktori saat ini/Home/Avi/Desktop
2. Tulis skrip shell yang menambahkan dua angka jika disediakan sebagai argumen baris perintah dan jika dua angka tidak memasukkannya mengeluarkan pesan kesalahan bersama dengan satu baris cara menggunakan deskripsi cara.
Menjawab : Berikut adalah skrip shell sederhana bersama dengan deskripsi yang menambahkan dua nomor jika disediakan sebagai argumen baris perintah, jika tidak melempar kesalahan dengan satu baris tentang cara menggunakan skrip.Sekali lagi buat file yang dipanggil 'Dua nomor dua.SH'Dan tambahkan konten berikut ke dalamnya.
#!/bin/bash # shebang jika [$ # -ne 2] # Jika dua input tidak diterima dari input standar kemudian # kemudian jalankan pernyataan di bawah ini echo "penggunaan -$ 0 x y" # cetak pada output standar, cara menggunakan yang digunakan skrip (penggunaan - ./1.sh x y) gema "di mana x dan y adalah dua nos yang akan saya cetak" # cetak pada output standar, "di mana x dan y adalah dua nos yang akan saya cetak" keluar 1 # tinggalkan shell dalam tahap kesalahan dan sebelumnya Tugas itu berhasil dilakukan. fi # akhir dari pernyataan if. echo "jumlah $ 1 dan $ 2 adalah 'expr $ 1 + $ 2'" # Jika kondisi di atas salah dan pengguna memasukkan dua angka sebagai argumen baris perintah, itu akan menunjukkan jumlah dari angka yang dimasukkan.
Tetapkan izin pelaksana pada file dan jalankan skrip seperti yang ditunjukkan di bawah ini.
# CHMOD 755 DUAMBERS.SH
Kondisi 1: Menjalankan skrip tanpa memasukkan dua angka sebagai argumen baris perintah, Anda akan mendapatkan output berikut.
Output sampel
# ./Dua Number.penggunaan sh - ./Dua Number.sh x y di mana x dan y adalah dua nos yang akan saya cetak jumlah
Kondisi 2: Ketika angka dimasukkan sebagai argumen baris perintah Anda akan mendapatkan hasil seperti yang ditunjukkan.
$ ./Dua Number.SH 4 5 Jumlah 4 dan 5 adalah 9
Oleh karena itu skrip shell di atas memenuhi kondisi seperti yang disarankan dalam pertanyaan.
3. Anda perlu mencetak nomor yang diberikan katakanlah 10572, dalam urutan terbalik menggunakan skrip shell sedemikian rupa sehingga input disediakan hanya menggunakan argumen baris perintah. Jika data input tidak disediakan sebagai argumen baris perintah, itu harus melempar dan kesalahan dan harus menyarankan, bagaimana menggunakan skrip. Tulis naskahnya tetapi sebelum itu beri tahu saya algoritma yang perlu diimplementasikan di sini.
Algoritma
- 1. Biarkan nomor input = n
- 2. Set Rev = 0, SD = 0 (Digitis terbalik dan tunggal diatur ke 0)
- 3. n % 10, akan menemukan dan memberikan satu digit kiri tunggal
- 4. Nomor terbalik dihasilkan sebagai Rev * 10 + SD
- 5. Mengurangi angka input (n) dengan 1.
- 6. Jika n> 0, maka goto langkah 3 lain goto setp 7
- 7. Cetak Rev
Sekarang lagi, buat file yang dipanggil 'angka.SH'dan tambahkan kode yang diberikan berikut ini.
#!/bin/bash if [$# -ne 1] Kemudian echo "penggunaan: $ 0 angka" echo "Saya akan menemukan kebalikan dari nomor yang diberikan" echo "misalnya misalnya. $ 0 0123, saya akan mencetak 3210 "keluar 1 fi n = $ 1 rev = 0 sd = 0 sementara [$ n -gt 0] do sd =" expr $ n % 10 "rev =" expr $ rev \* 10 + $ sd "n =" expr $ n / 10 "Done echo" Nomor terbalik adalah $ rev "
Berikan izin eksekusi pada file dan jalankan skrip seperti yang ditunjukkan di bawah ini.
# chmod 755 angka.H
Kondisi 1: Ketika input tidak disediakan sebagai argumen baris perintah, Anda akan mendapatkan output berikut.
Output sampel
./angka.Penggunaan SH: ./angka.nomor sh saya akan menemukan kebalikan dari nomor yang diberikan untuk misalnya… /2.SH 123, saya akan mencetak 321
Kondisi 2: Saat input disediakan sebagai argumen baris perintah.
$ ./angka.SH 10572 Nomor terbalik adalah 27501
Script di atas bekerja dengan sempurna dan output adalah apa yang kami butuhkan.
4. Anda seharusnya menghitung perhitungan bilangan real langsung dari terminal dan bukan skrip shell apapun. Apa yang akan Anda lakukan (katakan bilangan real adalah 7.56 dan 2.453)?
Menjawab : Kita perlu menggunakan perintah bc dengan cara khusus seperti yang dijelaskan di bawah ini. Output echo 7.56 + 2.453 harus disalurkan ke BC.Misalnya, jalankan perintah berikut untuk menghitung angka secara real time menggunakan bc perintah seperti yang ditunjukkan.
$ echo 7.56 + 2.453 | BC 10.013
5. Anda seharusnya menemukan nilai pi hingga 100 tempat desimal, apa cara termudah untuk menyelesaikan hasil.
Menjawab : Cara termudah untuk menemukan nilai pi, benar hingga 100 tempat desimal kita hanya perlu mengeluarkan perintah di bawah ini.# pi 100 3.14159265358979323846264338327950288419716939937510582097494459230781640628620898628034825342117067
Jelas sekali! Kita harus memiliki paket 'pi'Diinstal. Lakukan saja a tepat atau yum untuk mendapatkan paket yang diperlukan untuk menginstal 'pi'ke distribusi yang Anda gunakan.
Itu saja untuk saat ini. Saya akan berada di sini lagi dengan artikel menarik lainnya segera. Sampai kemudian tetap disini dan terhubung ke tecmint.com. Jangan lupa memberi kami umpan balik yang berharga di bagian komentar di bawah ini.
- « Menginstal LEMP (Linux, Nginx, MySQL/MariADB, PHP/PHP-FPM dan PhpMyadmin) di Gentoo Linux
- Membuat .Repositori Paket Deb ”di SourceForge.bersih menggunakan alat reprepro di ubuntu »