В Bash вы можете получить количество параметров, переданных в скрипт или функцию, используя специальную переменную «$#» или команду «shift». Вот несколько методов с примерами кода:
Метод 1. Использование переменной “$#”
#!/bin/bash
count=$#
echo "Number of parameters: $count"
Способ 2: использование команды «shift»
#!/bin/bash
count=0
while [ -n "$1" ]; do
count=$((count+1))
shift
done
echo "Number of parameters: $count"
Метод 3. Использование цикла for
#!/bin/bash
count=0
for arg in "$@"; do
count=$((count+1))
done
echo "Number of parameters: $count"
Метод 4. Использование синтаксиса “имя_функции $@”
#!/bin/bash
funcname() {
count=$#
echo "Number of parameters: $count"
}
funcname "$@"
Метод 5. Использование комбинации «shift» и «$#» в функции
#!/bin/bash
funcname() {
count=0
while [ -n "$1" ]; do
count=$((count+1))
shift
done
echo "Number of parameters: $count"
}
funcname "$@"