Здравствуйте!
Подскажите, пожалуйста, каким образом можно узнать длину переменной силами bash'а.
В частности надо сделать штуку, что если длина переменной меньше 5, то в конец этой переменной надо добавить таб, если больше 5, то не добавлять.
В общем-то если будет получен ответ на первый вопрос, то на второй ответ не требуется.
((${#VAR}<5)) && VAR="$VARтаб">сли длина переменной меньше 5, то в
>, если больше 5, то неА если _равна_ 5??! :-P
И да man bash и "на до же себя заставлять!"(тм).
>Подскажите, пожалуйста, каким образом можно узнать длину переменной силами bash'а.len=`printf "%s" "$var" | wc -l`
>>Подскажите, пожалуйста, каким образом можно узнать длину переменной силами bash'а.
>
>len=`printf "%s" "$var" | wc -l`wc -c конечно же
>>>Подскажите, пожалуйста, каким образом можно узнать длину переменной силами bash'а.
>>
>>len=`printf "%s" "$var" | wc -l`
>
>wc -c конечно жеСпасибо большое, решение с помощью wc помогло. Правда и изучение Adv. bash scripting guide помогло бы, но поздно :).
А вот совсем детский вопрос:
Есть массив строк ip[0]=10.10.10.10, ip[1]=20.20.20.20.
Как мне обратиться к 1-му символу 2-го элемента массива? (в данной ситуации цифра 2).
Перепробовал всякие вариации - ${ip[$i][$j]}, ${ip[${i[$j]}} и подобные, но нужного результата не добился.
Подскажите, плиз!
>Спасибо большое, решение с помощью wc помогло.
>Правда и изучение Adv. bash scripting guide помогло бы, но поздно :).Я настаиваю: man bash. Возможно, info bash, если он есть локально...
Впрочем, ABS может оказаться проще читать -- иллюстрированный гуиде с песнями и плясками. Но для _понимания_ песен-плясок нужно понимание man bash _и_ опыт работы с...>Есть массив строк ip[0]=10.10.10.10, ip[1]=20.20.20.20.
>Как мне обратиться к 1-му символу 2-го элемента массива? (в данной ситуации
>цифра 2).$ ip[0]=10.10.10.10; ip[1]=20.20.20.20
$ echo "${ip[1]:0:1}"
2
$ _
>Перепробовал всякие вариации - ${ip[$i][$j]}, ${ip[${i[$j]}} и подобные, но нужного результата не
>добился.Срочно начинай писать автоматичный генератор вариаций и его выход - башу, обязательно с записью лога. И - читать-читать-читать логгг. :/
>Подскажите, плиз!
>$ ip[0]=10.10.10.10; ip[1]=20.20.20.20
>$ echo "${ip[1]:0:1}"
>2
>$ _Блин, заффтыкал... так оно и делается, спасибо!
>Подскажите, плиз!$ for((i=0;i<11; i+=3)); do for((j=1;i+j<11; j+=3)); do echo "${ip[1]:i:j}"; done; done
2
20.2
20.20.2
20.20.20.2
2
20.2
20.20.2
2
20.2
2
$ _
Блин...Когда же народ начнет читать (в данном случае Advanced Bash Scripting)
до того, как задать вопрос...String Length
${#string}
expr length $string
expr "$string" : '.*'
stringZ=abcABC123ABCabc
echo ${#stringZ} # 15
echo `expr length $stringZ` # 15
echo `expr "$stringZ" : '.*'` # 15