Hi Ron,
> Unfortunately it is not so simple, the linux tar does not allow the
> '\' character in a name the way !moonfish and the linux filer can,
> possibly because it conflicts with Dos separators, I don't know.
Are you sure about that?
$ ls -l
total 0
-rw-r--r-- 1 ralph ralph 0 2013-04-07 12:58 a
-rw-r--r-- 1 ralph ralph 0 2013-04-07 12:58 back\slash
-rw-r--r-- 1 ralph ralph 0 2013-04-07 12:58 character
$
$ tar cvf - . | tar tvf -
./
./a
./character
./back\\slash
drwxr-xr-x ralph/ralph 0 2013-04-07 12:58 ./
-rw-r--r-- ralph/ralph 0 2013-04-07 12:58 ./a
-rw-r--r-- ralph/ralph 0 2013-04-07 12:58 ./character
-rw-r--r-- ralph/ralph 0 2013-04-07 12:58 ./back\\slash
$
I've lost track what problem is trying to be solved here but the normal
way is to find characters that can be paired and transliterated for each
other, e.g. `/' on Unix becomes `.' on RISC OS, and if there are some
that don't pair up then an escape mechanism is needed, e.g. ` ' would
become `?20', remembering to escape the escape character itself to
`?3f'. (I forget RISC OS's special characters so `?' was picked at
random.)
That then leaves the problem of filename and pathname length
differences, including expansion caused by the escape mechanism.
Cheers, Ralph.
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
No comments:
Post a Comment