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 --

----

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