On Wed, Dec 4, 2013 at 12:45 AM, Roland Mainz <roland.ma...@nrubsig.org> wrote:
> On Tue, Dec 3, 2013 at 8:13 PM, Glenn Fowler <glenn.s.fow...@gmail.com> wrote:
>> On Tue, Dec 3, 2013 at 12:02 PM, Simon Toedt <simon.to...@gmail.com> wrote:
>>> On Tue, Dec 3, 2013 at 5:19 PM, Glenn Fowler <glenn.s.fow...@gmail.com>
>>> wrote:
>>> > i don't really care for the utility of -p but it seems to be working as
>>> > advertised
>>> > try something like: mktemp myprefix "$PWD"
>>>
>>> ksh -c 'builtin mktemp ; touch x1 ; cd -@ x1 ; mktemp myprefix "$PWD"
>>> ; :'
>>> /tmp/myprejFqre.FAL
>>>
>>> > or mktemp "" "$PWD"
>>>
>>> does not work either
>>>
>>> >
>>> > mktemp --?p
>>> >   -p, --default=directory
>>> >                   Use directory if the TMPDIR environment variable is
>>> > not
>>> > defined. Implies --tmp.
>>> >
>>> > gnu man mktemp
>>> >        -p DIR use DIR as a prefix; implies -t [deprecated]
>>> >
>>> >        -t     interpret TEMPLATE as a single file name component,
>>> > relative
>>> > to a directory: $TMPDIR, if set; else  the
>>> >               directory specified via -p; else /tmp [deprecated]
>>> >
>>>
>>> What I wish to archive is to get a temporary file in the O_XATTR dir
>>> so that the temp file disappears when I remove the underlying parent
>>> file.
>>>
>>> And I am confused: Why does this not work? I'd expect a temporary file
>>> in /dev/file/xattr@/home/stoe/x1//@//, but instead always get one in
>>> /tmp:
>>> env - /bin/ksh -x -c 'builtin mktemp ; touch x1 ; cd -@ x1 ;
>>> TMPDIR="$PWD" ; mktemp "" "$PWD" ; :'
>>> + builtin mktemp
>>> + touch x1
>>> + cd -@ x1
>>> + TMPDIR=/dev/file/xattr@/home/stoe/x1//@//
>>> + mktemp '' /dev/file/xattr@/home/stoe/x1//@//
>>> /tmp/8nR0snQsJI.JID
>>> + :
>>> env - /bin/ksh -x -c 'builtin mktemp ; touch x1 ; cd -@ x1 ;
>>> TMPDIR="$PWD" ; mktemp ; :'
>>> + builtin mktemp
>>> + touch x1
>>> + cd -@ x1
>>> + TMPDIR=/dev/file/xattr@/home/stoe/x1//@//
>>> + mktemp
>>> /tmp/tmp5Sy9yoF.syY
>>> + :
>>
>> what does this output (-u prints the tmp file but does not create)
>> --
>> set -x
>> mktemp --?-version
>> cd
>> print $PWD
>> mktemp -u "" "$PWD"
>> touch x1
>> cd -@ x1
>> mktemp -u "" "$PWD"
>> cd -
>> rm x1
>
> The output of that script looks like this with ast-ksh.2013-10-10 on
> Solaris 11/B145/AMD64/64bit:
> -- snip --
> $ env - ~/bin/ksh xxx.sh
> + mktemp '--?-version'
>   version         mktemp (AT&T Research) 2012-12-12
> + cd
> xxx.sh[3]: cd: bad directory
> + print /home/test001/tmp
> /home/test001/tmp
> + mktemp -u '' /home/test001/tmp
> /home/test001/tmp/4sfuBB7Hll.llT
> + touch x1
> + cd -@ x1
> + mktemp -u '' /dev/file/xattr@/home/test001/tmp/x1//@//
> /tmp/hWzxGz8X0v.0vJ
> + cd -
> /home/test001/tmp
> + rm x1
> -- snip --

Interesting... the (likely unrelated to the original issue)
"xxx.sh[3]: cd: bad directory" only happens if I launch the shell with
$ env - ~/bin/ksh ... # ... does anyone know why ?

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.ma...@nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 3992797
 (;O/ \/ \O;)
_______________________________________________
ast-developers mailing list
ast-developers@lists.research.att.com
http://lists.research.att.com/mailman/listinfo/ast-developers

Reply via email to