URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7842
[ Назад ]

Исходное сообщение
"разная длина симоволов в "

Отправлено sam_pb , 20-Янв-09 16:59 
Здравствуйте!
Задача:
suse10.utf8 на рейзере 3.7
есть два полных пути к файлу. Один - часть другого. Нужно сделать относительный путь.
.
Пробую:
${string#substring}
выдаёт содержимое $string. как тольно не пробовал...
.
ещё пробую:
//////
path=/fld/sourse_papka/СУБdir/file
source=/fld/sourse_papka
                alen=`expr length "$source"`
                blen=`expr length "$path"`
#               echo alen: $alen
#               echo blen: $blen
#nyTb oTHOCuTeJlbHo cypca
                rel_file_dir=`expr substr "$path" $alen $blen`
//////
происходит:
expr length вычисляет длину строки неправильно - увеличивает на количество русских симоволов
но!
expr substr возвращает строку исходя из правильного количества символов в $path
.
как мне правильно посчитать количество символов в $path?
Заранее спасибо.
.
PS без русских бук в названиях трудно :(
ЗЗЫ это кусок довольно жирного и долговыполняющегося скрипта :(


Содержание

Сообщения в этом обсуждении
"разная длина симоволов в "
Отправлено vic , 20-Янв-09 17:37 
${full_path:${#source_path}}

"разная длина симоволов в "
Отправлено sam_pb , 21-Янв-09 10:08 
>${full_path:${#source_path}}

Спасибо. замечательно работает :)