echo -n "##### WHICH YEAR OR YEARS? #######"
read year
Как я могу проверить общее количество входа пользователя (год)? Например, вход пользователя следующим образом; 2014 2013 года 2015. Затем общее количество входа равняется 3. Между исходными данными всегда существует одно пространство. Какой код дает общее количество исходных данных года?
Сохраните исходные данные в массиве при помощи -a
опция read
и затем считайте число элементов массива:
$ read -a year
2015 2016 2010
$ echo "${#year[@]}"
3
$ read -a year
2010 2019
$ echo "${#year[@]}"
2
<час> Или использование wc -w
, никакая потребность в массиве:
$ read year
2013 2015 2017
$ wc -w <<<"$year"
3
<час> Или можно установить позиционные параметры с помощью set
и затем иметь количество:
$ read year
2015 2016 2017 2018
$ set -- $year
$ echo "$#"
4
<час> Для сохранения его в переменной:
var="${#year[@]}" ## For array
var="$(wc -w <<<"$year")" ## For "wc -w"
var="$#" ## For "set"