[Comm] Re: growisofs (was: Bash string for escape symbols in string)

Vitaly Ostanin =?iso-8859-1?q?vyt_=CE=C1_vzljot=2Eru?=
Пн Фев 21 16:32:14 MSK 2005


Vitaly Ostanin пишет:
> Dmitry V. Levin пишет:
>
>>Hi,
>>
>>On Mon, Feb 21, 2005 at 02:30:48PM +0300, Vitaly Ostanin wrote:
>>
>>
>>>Подскажите, pls, чем из coreutils из функций bash можно
>>>экранировать спец. символы в строке?
>>
>>Условие "из coreutils" обязательно?
>
> Нет, это я пытался по-умному выразить доступность и
> распространённость инструмента :)
>
>>А то я бы выбрал sed.
>
> Спасибо, попробую.

Попробовал - не получилось, и это утешает - неужели может быть
разница в способах экранирования? Скажите, у кого из нас ошибка в
ДНК - у меня или у growisofs ?

$ cat burn-dvd-files.sh

GRAFT_OPT=
for i in "$@"
do
     if [ "$GRAFT_OPT"x != x ]; then GRAFT_OPT=$GRAFT_OPT\ ; fi
     GRAFT_OPT=$GRAFT_OPT\"/$i\"=\"$i\"
done
#echo $GRAFT_OPT
growisofs -Z /dev/cdrecorder -R -jcharset cp1251 -graft-points
$GRAFT_OPT

$ ./burn-dvd-files.sh Тестовый\ каталог/ Снова\ тестовый\ каталог/
WARNING: /dev/cdrecorder already carries isofs!
About to execute 'mkisofs -R -jcharset cp1251 -graft-points
"/Тестовый каталог/"="Тестовый каталог/" "/Снова тестовый
каталог/"="Снова тестовый каталог/" | builtin_dd
of=/dev/cdrecorder obs=32k seek=0'
mkisofs: No such file or directory. Invalid node - "/Тестовый
:-( write failed: Input/output error

После убирания кавычек из цикла (\"):

$ ./burn-dvd-files.sh Тестовый\ каталог/ Снова\ тестовый\ каталог/
WARNING: /dev/cdrecorder already carries isofs!
About to execute 'mkisofs -R -jcharset cp1251 -graft-points
/Тестовый каталог/=Тестовый каталог/ /Снова тестовый
каталог/=Снова тестовый каталог/ | builtin_dd of=/dev/cdrecorder
obs=32k seek=0'
mkisofs: No such file or directory. Invalid node - /Тестовый
:-( write failed: Input/output error

После добавления кавычек в запуск growisofs:

growisofs -Z /dev/cdrecorder -R -jcharset cp1251 -graft-points
"$GRAFT_OPT"

$ ./burn-dvd-files.sh Тестовый\ каталог/ Снова\ тестовый\ каталог/
WARNING: /dev/cdrecorder already carries isofs!
About to execute 'mkisofs -R -jcharset cp1251 -graft-points
/Тестовый каталог/=Тестовый каталог/ /Снова тестовый
каталог/=Снова тестовый каталог/ | builtin_dd of=/dev/cdrecorder
obs=32k seek=0'
mkisofs: No such file or directory. Invalid node - Тестовый
каталог/ /Снова тестовый каталог/=Снова тестовый каталог/
:-( write failed: Input/output error

При этом скрипт такого содержания пишет нормально:

growisofs -Z /dev/cdrecorder -R -jcharset cp1251 -graft-points
"/Тестовый каталог=Тестовый каталог" "/Снова тестовый
каталог=Снова тестовый каталог"


--
Regards, Vyt
mailto:  vyt на vzljot.ru
JID:     vyt на vzljot.ru
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 256 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/community/attachments/20050221/b307f34a/attachment-0002.bin>


Подробная информация о списке рассылки community