Apa yang dimaksud $#
dengan shell?
Saya punya kode seperti
if [ $# -eq 0 ]
then
Saya ingin mengerti apa $#
artinya, tetapi pencarian Google sangat buruk untuk mencari hal-hal semacam ini.
shell
shell-script
BufBills
sumber
sumber
Jawaban:
Anda selalu dapat memeriksa halaman manual shell Anda.
man bash
mengatakan:Karenanya skrip shell dapat memeriksa berapa banyak parameter yang diberikan dengan kode seperti ini:
sumber
man
hampir bisa apa saja, termasukman
dirinya sendiri. Coba jugaapropos
beberapa saat.info
untuk halaman manual, atau informasi tambahan (sangat terperinci, dan terkotak) jika paket memiliki beberapaSebenarnya,
Jadi bersama
Dengan demikian, Anda dapat menggunakan
$#
untuk memeriksa jumlah argumen / parameter yang diteruskan seperti yang Anda lakukan dan menangani situasi yang tidak terduga.Begitu pula yang kita miliki
dll.
sumber
Itu adalah
jumlah parameter yang dengannya skrip dipanggil
jumlah parameter yang telah ditetapkan dalam skrip oleh
set -- foo bar
(ketika digunakan dalam suatu fungsi) jumlah parameter yang digunakan fungsi (
set
akan bekerja di sana juga).Ini dijelaskan di halaman manual bash di blok "Parameter Khusus".
sumber