首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mktemp(1)的可移植性如何?

mktemp(1)的可移植性如何?
EN

Stack Overflow用户
提问于 2010-05-08 10:15:46
回答 3查看 6.3K关注 0票数 31

正如标题所暗示的那样--我可以合理地确定mktemp将存在于我可能遇到的任何unix-y操作系统上吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-05-08 11:02:23

POSIX似乎没有指定mktemp(1)。

看起来大多数现代系统都有它,但是可用功能和选项的语义在不同的实现之间是不同的(因此特定的调用可能不可移植):

  • from OpenBSD - mktemp(1)起源于sudo 2.1
  • from FreeBSD
  • from Mac OS X -几乎总是与sudo fame
  • from Solaris
  • from GNU coreutils
  • from HP/UX的FreeBSD
  • from Todd C. Miller相同-这一点似乎与此处列出的大多数其他OpenBSD

特别不同

因此,如果您想要一个可移植的解决方案,您可能需要坚持在您感兴趣的所有平台上具有相同含义的功能和选项。

票数 25
EN

Stack Overflow用户

发布于 2010-05-08 10:34:03

mktemp函数(又称mktemp(3))最早出现在Unix V7中,因此它可能无处不在。但是,我相信mktemp命令(也就是mktemp(1))最早出现在Unix 2.1上,所以如果您必须处理真正过时的OpenBSD系统,您可能不得不担心--除非您可以分发非常便携的mktemp.org版本(以修复某些客户的过时系统上可能缺少此实用程序的问题)。当然,我们几乎不可能猜测你有多可能遇到过时的系统--例如,在HP-UX中,mktemp(1)已经存在了至少8年(甚至大多数企业都可能在这段时间内更新了他们的Unix操作系统),在Xenix中,我相信它出现在3.0 (1992年),等等。

票数 7
EN

Stack Overflow用户

发布于 2011-12-21 19:02:07

在Solaris9上,它位于SMCmktemp包中,请参见http://sunfreeware.com/indexsparc9.html

取消命名-s

SunOS

取消命名-r

5.9

/usr/sbin/pkgchk -l -p /usr/local/bin/mktemp

路径名: /usr/local/bin/mktemp

类型:常规文件

预期模式: 0555

预期所有者: bin

期望组: bin

预期文件大小(字节):8884

预期内容总和(1):6493

预期上次修改时间: Nov 05 08:48:17 2002

被以下包引用:

SMCmktemp

当前状态:已安装

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2792675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档