


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

Adakah anda mencari perisian yang baik untuk menulis persamaan matematik? Jika ya, artikel ini menyediakan editor persamaan 5 teratas yang boleh anda pasang dengan mudah pada pengedaran Linux kegemaran anda. Selain itu serasi dengan pelbagai jenis matematik

Pentadbir Linux harus biasa dengan persekitaran baris arahan. Oleh kerana mod GUI (antara muka pengguna grafik) di pelayan Linux tidak biasanya dipasang.ssh mungkin protokol yang paling popular untuk membolehkan pentadbir Linux menguruskan pelayan

Gogo adalah alat yang luar biasa untuk menanda direktori di dalam shell Linux anda. Ia membantu anda membuat pintasan untuk laluan panjang dan kompleks di Linux. Dengan cara ini, anda tidak lagi perlu menaip atau menghafal laluan panjang pada linux.for contohnya, jika ada direktori

PPA adalah alat penting bagi pengguna Ubuntu untuk mengembangkan sumber perisian mereka. 1. Apabila mencari PPA, anda harus melawat Launchpad.net, mengesahkan PPA rasmi di laman web atau dokumen rasmi projek, dan membaca deskripsi dan komen pengguna untuk memastikan status keselamatan dan penyelenggaraannya; 2. Tambah PPA untuk menggunakan arahan terminal Sudoadd-apt-repositoryppa:/, dan kemudian jalankan sudoaptupdate untuk mengemas kini senarai pakej; 3. Menguruskan PPA untuk melihat senarai tambahan melalui arahan GREP, gunakan parameter -Remove untuk menghapuskan atau memadam fail .list secara manual untuk mengelakkan masalah yang disebabkan oleh ketidakserasian atau menghentikan kemas kini; 4. Gunakan PPA untuk menimbang keperluan dan mengutamakan situasi yang tidak disediakan oleh pegawai atau memerlukan versi baru perisian.

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

Bagaimana dengan cepat menjana fail ujian saiz yang ditentukan? Ia boleh dicapai menggunakan alat baris arahan atau perisian grafik. Pada Windows, anda boleh menggunakan saiz nama fail fsutilfileCreatenew untuk menghasilkan fail dengan bait yang ditentukan; MACOS/Linux boleh menggunakan ddif =/dev/sifar = filebs = 1mcount = 100 untuk menjana fail data sebenar, atau gunakan fail truncate-s100m untuk membuat fail jarang. Jika anda tidak biasa dengan baris arahan, anda boleh memilih fsutilgui, dummyfilegenerator dan perisian alat lain. Nota termasuk: Perhatikan batasan sistem fail (seperti had atas saiz fail FAT32), elakkan menimpa fail sedia ada, dan beberapa program mungkin

Pengurus Versi Node (NVM) adalah skrip bash mudah yang membantu menguruskan pelbagai versi Node.js pada sistem Linux anda. Ia membolehkan anda memasang pelbagai versi node.js, melihat versi yang tersedia untuk pemasangan, dan periksa sudah dipasang versi.nv

Kunci untuk memasang sistem dwi di Linux dan Windows adalah pembahagian dan tetapan boot. 1. Penyediaan termasuk sandaran data dan memampatkan partisi sedia ada untuk membuat ruang; 2. Gunakan Ventoy atau Rufus untuk membuat cakera USB Boot Linux, cadangkan Ubuntu; 3. Pilih "wujud bersama dengan sistem lain" atau partition secara manual semasa pemasangan ( /sekurang -kurangnya 20GB, /ruang tinggal ruang, swap pilihan); 4. Semak pemasangan pemandu pihak ketiga untuk mengelakkan masalah perkakasan; 5. Jika anda tidak memasukkan menu boot grub selepas pemasangan, anda boleh menggunakan pembaikan boot untuk membaiki boot atau menyesuaikan urutan permulaan BIOS. Selagi langkah -langkahnya jelas dan operasi dilakukan dengan betul, keseluruhan proses tidak rumit.
