


Cara Membuat Skrip Bash Interaktif Dengan Ya, Tidak, Batalkan Prompt di Linux
Mar 16, 2025 am 10:25 AMSkrip shell interaktif meningkatkan pentadbiran sistem dengan menawarkan pengurusan tugas yang mesra pengguna dan cekap. Butiran panduan ini mewujudkan skrip bash interaktif di Linux, menggabungkan "ya," "tidak," dan "membatalkan" meminta untuk memastikan pengesahan pengguna sebelum pelaksanaan, mencegah tindakan yang tidak disengajakan.
Jadual Kandungan
- Perintah
read
di bash- Fungsi
- Kelebihan
- Contoh penggunaan
-
read
Asas Perintah
- Membina skrip bash interaktif dengan ya/tidak/batal arahan
- Contoh 1: Skrip Kemas Kini Sistem Debian
- Contoh 2: Memadam fail log lama
- Contoh 3: Menyalin fail antara direktori
- Kesimpulan
Pengenalan
Meningkatkan skrip bash dengan input pengguna dengan ketara meningkatkan utiliti dan pengalaman pengguna mereka. Perintah read
memudahkan interaktiviti ini, mendorong pengguna untuk input dan menyimpan respons dalam pembolehubah. Menggabungkan read
dengan pernyataan bersyarat (contohnya, if
, case
) membolehkan tingkah laku skrip dinamik berdasarkan input pengguna. Tutorial ini merangkumi:
- Tujuan perintah
read
. - Menangkap Input Pengguna dengan
read
. - Menggunakan
if
dan penyataancase
untuk pengendalian tindak balas. - Contoh praktikal skrip bash interaktif.
Panduan ini melengkapkan anda untuk membuat skrip bash interaktif yang meminta pengguna untuk pengesahan, membolehkan mereka meneruskan, membatalkan, atau membatalkan operasi.
Perintah read
di bash
Perintah read
Bash membaca garis input (dari pengguna atau fail) dan menyerahkannya kepada satu atau lebih pembolehubah. Ia penting untuk skrip shell interaktif dan pemprosesan fail teks.
Fungsi
read
Jeda Pelaksanaan skrip, menunggu input pengguna diikuti oleh Enter. Teks yang dimasukkan disimpan dalam pemboleh ubah yang ditentukan.
Kelebihan
- Membolehkan skrip interaktif.
- Membolehkan tingkah laku skrip tersuai berdasarkan input pengguna.
- Ideal untuk menu dan pengesahan meminta sebelum tindakan kritikal.
Contoh penggunaan
- Mengumpulkan nama pengguna untuk mesej yang diperibadikan.
- Mendapatkan Pengesahan Ya/Tidak Sebelum Melaksanakan Tindakan.
- Mewujudkan menu interaktif dengan pilihan pengguna yang boleh dipilih.
read
Asas Perintah
1. Sintaks:
Baca [Opsyen] Variable_name
Pilihan:
-
-r
: menghalang tafsiran backslash sebagai watak melarikan diri. Contoh:read -r response
-
-p
: Memaparkan mesej segera (menghapuskan keperluan untukecho
). Contoh:read -p "What's your name? " name
-
-s
: menyembunyikan input pengguna (sesuai untuk kata laluan). Contoh:read -s -p "Enter your password: " password
-
-t
: Menetapkan had masa untuk input. -
-n
: Mengehadkan bilangan aksara yang diterima sebagai input.
2. Membaca Input Pengguna:
Penggunaan utama read
adalah mendorong pengguna untuk input semasa pelaksanaan skrip.
Contoh:
echo "Sila masukkan nama anda:" Baca nama echo "Hello, $ nama!"
3. Menggunakan arahan:
Pilihan -p
memudahkan paparan segera:
baca -p "berapa umur anda?" umur echo "Saya berumur $ berumur tahun."
4. Pelbagai pembolehubah:
Baca pelbagai input ke dalam pembolehubah berasingan pada satu baris:
echo "Masukkan nama pertama dan terakhir anda:" Baca first_name last_name echo "Hello, $ first_name $ last_name!"
5. Nilai lalai:
Berikan nilai lalai jika pengguna tidak memasukkan input:
baca -p "Masukkan blog kegemaran anda [ostechnix]:" Blog Blog = $ {Blog: -Ostechnix} Echo "Blog kegemaran saya ialah $ Blog."
6. Had Masa:
Tetapkan had masa input dengan -t
:
baca -t 5 -p "cepat! Taipkan nombor bertuah anda (5 saat):" Lucky_number echo "Nombor bertuah anda ialah $ lucky_number"
7. Input Tersembunyi (Kata Laluan):
Gunakan -s
untuk data sensitif seperti kata laluan:
baca -s -p "Masukkan kata laluan:" Kata Laluan echo # mencetak garis baru echo "kata laluan yang diterima (tersembunyi untuk keselamatan)"
Contoh coretan perintah read
sampel untuk pengesahan kemas kini sistem (ya/tidak/batal):
prompt_for_input () { Walaupun benar; lakukan echo -n "Sistem kemas kini? (Y/N/C):" BACA -R Respons Kes "Response $ Response" dalam [Yy]*) echo "Ya dipilih."; kembali 0 ;; [Nn]*) echo "Tidak dipilih."; kembali 1 ;; [Cc]*) echo "Batal dipilih."; kembali 2 ;; *) echo "input tidak sah."; ;; ESAC selesai }
Membina skrip bash interaktif dengan ya/tidak/batal arahan
Tiga skrip contoh menggambarkan penciptaan skrip interaktif menggunakan pernyataan read
dan bersyarat.
Contoh 1: Skrip Kemas Kini Sistem Debian
Skrip ini meminta pengesahan sebelum mengemas kini sistem berasaskan Debian.
(Kod skrip akan dimasukkan di sini, sama dengan input tetapi berpotensi diperbaiki untuk kejelasan dan keteguhan)
Contoh 2: Memadam fail log lama
Skrip ini memberi amaran kepada pengguna dan meminta pengesahan sebelum memadam fail log lama. Awas: Uji ini dengan teliti sebelum menggunakannya pada sistem pengeluaran. Skrip harus menentukan direktori yang tepat dan ambang umur untuk penghapusan.
(Kod skrip akan dimasukkan di sini, serupa dengan input tetapi berpotensi diperbaiki untuk kejelasan dan keteguhan, menekankan langkah berjaga -jaga keselamatan)
Contoh 3: Menyalin fail antara direktori
Skrip ini meminta pengesahan sebelum menyalin fail, memberi amaran mengenai potensi penggantian.
(Kod skrip akan dimasukkan di sini, sama dengan input tetapi berpotensi diperbaiki untuk kejelasan dan keteguhan, menonjolkan pertimbangan penampilan fail)
Kesimpulan
Tutorial ini menunjukkan mencipta skrip bash interaktif dengan ya/tidak/membatalkan arahan, menggunakan perintah read
dan pernyataan bersyarat untuk membuat keputusan. Walaupun kaedah lain wujud, read
menawarkan kesederhanaan dan keberkesanan. Ingatlah untuk mengutamakan keselamatan pengguna dan integriti data semasa membuat skrip interaktif.
Atas ialah kandungan terperinci Cara Membuat Skrip Bash Interaktif Dengan Ya, Tidak, Batalkan Prompt di Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

LXD digambarkan sebagai bekas generasi akan datang dan pengurus mesin maya yang menawarkan sistem Linux yang mendalam yang berjalan di dalam bekas atau sebagai mesin maya. Ia memberikan imej untuk bilangan pengagihan Linux yang sangat besar dengan sokongan

Langkah-langkah utama untuk mewujudkan sijil SSL yang ditandatangani sendiri adalah seperti berikut: 1. Menjana kunci persendirian, gunakan perintah OpenSslGenrsa-Outselfsigned.Key2048 untuk menghasilkan fail kunci peribadi RSA 2048-bit, parameter pilihan -AES256 untuk mencapai perlindungan kata laluan; 2. Buat Permintaan Sijil (CSR), Jalankan OpenSsslreq-New-KeyselfSigned.Key-OutLelfsigned.csr dan isikan maklumat yang relevan, terutama bidang "CommonName"; 3. Menjana sijil dengan ditandatangani sendiri, dan gunakan opensslx509-req-days365-inselfsigned.csr-signk

Penyemak imbas Firefox adalah pelayar lalai untuk pengagihan Linux yang paling moden seperti Ubuntu, Mint, dan Fedora. Pada mulanya, prestasinya mungkin mengagumkan, bagaimanapun, dengan peredaran masa, anda mungkin dapati bahawa penyemak imbas anda tidak begitu pantas dan resp

Apabila menghadapi masalah DNS, mula -mula semak fail /etc/resolv.conf untuk melihat sama ada nameserver yang betul dikonfigurasi; Kedua, anda boleh menambah DNS awam secara manual seperti 8.8.8.8 untuk ujian; Kemudian gunakan arahan NSLOOKUP dan Dig untuk mengesahkan sama ada resolusi DNS adalah normal. Sekiranya alat ini tidak dipasang, anda boleh memasang pakej DNSutils atau Bind-UTILS terlebih dahulu; Kemudian periksa status perkhidmatan yang diselesaikan SystemD dan fail konfigurasi /etc/systemd/resolved.conf, dan tetapkan DNS dan fallbackDNS seperti yang diperlukan dan mulakan semula perkhidmatan; Akhirnya periksa status antara muka rangkaian dan peraturan firewall, sahkan bahawa port 53 tidak

Jika anda mendapati bahawa pelayan berjalan perlahan -lahan atau penggunaan memori terlalu tinggi, anda harus memeriksa sebab sebelum beroperasi. Pertama, anda perlu menyemak penggunaan sumber sistem, menggunakan atas, HTOP, FREE-H, IOSTAT, SS-ANTP dan arahan lain untuk memeriksa CPU, Memory, Disk I/O dan sambungan rangkaian; Kedua, menganalisis masalah proses tertentu, dan menjejaki tingkah laku proses penghuni tinggi melalui alat seperti PS, Jstack, Strace; Kemudian semak log dan pemantauan data, lihat rekod OOM, permintaan pengecualian, pertanyaan perlahan dan petunjuk lain; Akhirnya, pemprosesan yang disasarkan dijalankan berdasarkan sebab -sebab biasa seperti kebocoran memori, keletihan kolam sambungan, ribut kegagalan cache, dan konflik tugas masa, mengoptimumkan logik kod, menubuhkan mekanisme percubaan masa, menambah fius had semasa, dan sumber pengukuran tekanan dan penilaian secara teratur.

Sebagai pentadbir sistem, anda mungkin mendapati diri anda (hari ini atau pada masa akan datang) bekerja di persekitaran di mana Windows dan Linux wujud bersama. Bukan rahsia lagi bahawa beberapa syarikat besar lebih suka (atau harus) menjalankan beberapa perkhidmatan pengeluaran mereka di Windows Boxes

Terus terang, saya tidak dapat ingat pada kali terakhir saya menggunakan PC dengan pemacu CD/DVD. Ini adalah terima kasih kepada industri teknologi yang sentiasa berkembang yang telah melihat cakera optik digantikan oleh pemacu USB dan media penyimpanan yang lebih kecil dan padat yang menawarkan lebih banyak simpanan
![Pemasangan dan semakan Q4OS Linux [distro ringan]](https://img.php.cn/upload/article/001/242/473/175150507396452.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
Q4OS adalah pengedaran Linux baru yang berdasarkan Debian; Pangkalan umum yang dikongsi dengan pengagihan lain seperti Ubuntu dan Linux Mint. Ia bertujuan untuk pengguna yang hanya mahukan sistem operasi Linux yang mudah, stabil, mudah digunakan
