У меня есть BASH-скрипт, который постоянно интерпретирует входящие данные. Я надеялся, если есть способ BASH понять, является ли это комбинацией букв, например, hi
, bye bye
или номерами 123451
.Есть ли способ различать символы и цифры?
Каким будет фрагмент кода?
awk_variables=`echo "$line" | awk -F, '{print $1, $4, $5, $7, $10 }'`
awk_variables_value_array=($awk_variables) #turns contents of 'awk_variables' into an array 'awk_variables_value_array'
^Это часть кода, который делает чтение из ($)line
из файла CSV. Здесь здесь может быть «привет» или цифры, если это тот случай, который я не хочу читать. Однако у $4
есть буквы, когда они читаются.
Q: Что бы сценарий выглядеть, если бы это было быть в состоянии отличить геодезическую от букв и цифр?
В идеале: Альтернативный подход мог бы быть, если немного кода может подсчитать, сколько параметров есть в данном ($)line
. Если параметры не равны величине x, я не мог ее прочитать и перейти к следующей строке. Вопрос: Каким будет сценарий?
Могу ли я заменить 'array'' awk_variables_value_array'? А также это будет работать 'number_of_values_in_array = $ {# array [@]}' т.е. присваивать переменную '$ {# array [@]}' – 3kstc
@ 3kstc: Это просто имя. Вы могли бы поставить 'the_sky_is_blue_but_its_raining', если хотите. Или 'r'. Вам решать. Важным битом является флаг '-a', что означает« поместить разделенные части в массив со следующим именем ». – rici
Последний вопрос: 'number_of_values_in_array = $ {# array [@]}' это тоже сработает? – 3kstc