“fast_abs_path”在什么方面“危险,但可能更快”?

2024-01-27

The Cwd 模块的文档 http://perldoc.perl.org/Cwd.html#abs_path-and-friends指出fast_abs_path是“更危险,但可能更快的版本abs_path“。它在什么方面有危险?在什么情况下它更快?行为是否因平台而异?


fast_abs_path调用chdir让内核一次性解析通向您传递的路径的路径,而不是仔细检查每个组件并逐个构建新路径;问题是权限可能会阻止它chdir之后返回原始目录。 (有些系统可以使用open and fchdir来解决这个问题,但它并不是在运行 Perl 的所有平台上都可靠地可用。)

这种情况是否会发生取决于您的脚本是否可以在无法直接访问的目录中执行。在类 Unix 系统上,当 setuid 包装器出现这种情况时,可能会发生这种情况chdirs 到受限权限区域,然后删除 setuid。 (从历史上看,受限权限位于名为的路径组件上lock;各种邮件和 Usenet 新闻子系统已使用它来保护其队列目录。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“fast_abs_path”在什么方面“危险,但可能更快”? 的相关文章

  • 如何在 Perl 中取消导入函数?

    我正在尝试删除导入的符号 以便它们不能用作对象中的方法 但是no似乎不起作用 也许我不明白不 或者还有其他方法 use 5 014 use warnings use Test More still has carp after no car
  • 如何在 Perl 中使用数组引用中的索引作为方法引用?

    如同这个关于迭代子例程引用的问题 https stackoverflow com questions 452529 how do i iterate over dereference an array of subroutine refs
  • 如何从 Perl 调用 gnuplot 脚本

    我有一个 gnu gp 文件 grphist conf set terminal canvas Terminal type set to canvas Options are solid butt size 600 400 fsize 10
  • 当一个模块安装了两个版本时 Perl 会做什么?

    我在正在使用的远程机器上没有 root 访问权限 因此我使用 cpanm 和 local lib 的组合 如下所述here https stackoverflow com a 2980715 1156644将 CPAN 模块安装到我的本地目
  • Perl Mongo 查找对象 ID

    你会认为这是一件简单的事情 我有一个集合中的对象 ID 列表 我想根据对象 ID 获取单个记录 谷歌搜索过 但没有任何帮助 所以我有对象 ID 5106c7703abc120a04070b34 my client MongoDB Mongo
  • 如何使用 Perl 从 NCBI 获取 FASTA 核苷酸格式的基因特征?

    我可以手动下载 FASTA 文件 如下所示 gt lcl CR543861 1 gene 1 ATGCTTTGGACA gt lcl CR543861 1 gene 2 GTGCGACTAAAA 通过单击 发送到 并选择 基因特征 FAST
  • perl xs - 从 c 数组返回 perl 数组

    使用 XS 我尝试将值从 C 数组传递到可在脚本中使用的 Perl 数组 这是我的 xs 文件中的代码 AV DoubleArray getPerlArray CODE r newAV for size t i 0 i lt THIS gt
  • 是否有用于 AES 的纯 Perl 模块?

    是否有用于 AES 的纯 Perl 模块 地穴 Rijndael PP http search cpan org dist Crypt Rijndael PP Rijndael 是底层算法AES https secure wikimedia
  • Perl 中字符串之间的字符匹配计数

    我有一个字符串 例如字符串 1 需要与另一个字符串 字符串 2 匹配 两个字符串的长度相同并且不区分大小写 我想打印两个字符串之间的字符匹配数 E g String 1 stranger String 2 strangem Match co
  • 从日志尾部提取匹配行后退出

    我使用范围运算符来提取日志文件的一部分 例如 tail F logfile perl ne print if b d 现在 一旦提取的部分匹配 我就尝试退出该过程 我尝试过 tail F logfile perl ne print if b
  • Perl 中的全局变量、子程序变量问题

    如何将子程序变量值转移到另一个子程序变量中 我可以使用全局变量吗 sub foo my myvar Hello sub foo1 my myvar1 myvar how can I get the Hello from myvar 我尝试使
  • 如何在 Perl 脚本中包含另一个文件中的函数?

    这似乎是一个非常简单的问题 但不知何故 我的 Google Fu 失败了 在 Perl 中包含其他文件中的函数的语法是什么 我正在寻找类似C的东西 include blah h 我看到了使用 Perl 模块的选项 但这似乎需要对我当前的代码
  • 如何轻松地将 Ajax、perl 和 JSON 结合使用?

    我正在尝试使用 Ajax 制作一个网页 Example 我创建了一个 Perl CGU 文件来触发一个简单的帖子 文件 test cgi name 托马斯 回复短信 你的名字是托马斯 我创建了一个可以使用该帖子的 html 文件 但随后页面
  • 正则表达式从字符串中提取 IP 和端口

    我正在使用 Perl 尝试从字符串中提取 IP 地址和端口 我尝试使用的正则表达式是 s sip 字符串是 sip 255 255 255 255 8080 transport TCP sip 255 255 255 255 8080 显然
  • Perl 是否有相当于 Python 的 `if __name__ == '__main__'` 的功能?

    有没有一种方法可以确定当前文件是否是 Perl 源中正在执行的文件 在 Python 中 我们使用以下结构来做到这一点 if name main This file is being executed raise NotImplemente
  • 我怎样才能挂钩 Perl 的 use/require 以便抛出异常?

    如果文件已经加载 是否可以挂载到use require所以我可以抛出异常 在我即将到来的nextgen blacklist http github com EvanCarroll nextgen blob blacklist lib nex
  • Perl 的反引号、system 和 exec 有什么区别?

    有人可以帮帮我吗 在 Perl 中 以下之间有什么区别 exec command and system command and print command 还有其他方法可以运行 shell 命令吗 exec 执行命令并一去不复返 这就像一个
  • 在 qx 运算符中将 perl 数组拆分为单独的参数

    我试图将一组参数传递给qx操作员 考虑 my files qw A txt B txt print qx ls files 这给出了错误 ls cannot access A txt B txt No such file or direct
  • Perl:测试输入阅读器?

    有没有一种方法可以使用标准 Test 等模块自动测试 Perl 程序是否正在读取输入 例如标准输入正确吗 例如 测试一个从 STDIN 读取两个整数并打印它们之和的程序 这不是 100 清楚你的意思 我会回答假设你想编写一个测试脚本来测试你
  • Perl 和 Selenium::远程::驱动程序

    再次编辑 我在弗吉尼亚州北部某处的 AWS 上有一台服务器 这是我的监控服务器 我从另一个状态 ssh 进入这个 Ubuntu 服务器来进行系统管理 我想在这台服务器上进行 Web 自动化测试 它将测试互联网上的 Web 应用程序 点击 U

随机推荐

  • 如何在 useEffect 中使用 setState 进行 API 调用后执行函数?

    我是一个 React 新手 学习了 30 个小时 有一些基本的 Javascript 背景 现在我正在学习一门课程 并试图 离开 这条路 但我很好奇如何实现我的预期目标 有一个 Memegenerator 它在渲染开始时从 API 获取所有
  • Magento 中不允许序列化?

    当我在 Magento 中打开缓存时 出现以下异常 不允许序列化 Mage Core Model Layout Element 异常发生在app code core Mage Page Block Template Links php 在线
  • 使用 Python 放置 PMML

    我有一个简单的PMML http en wikipedia org wiki Predictive Model Markup Language我想要的文件PUT到评分服务器 这里是curl call curl X PUT data bina
  • 如何使用 kubectl cmd 获取 git commit sha1?

    如何使用 kubectl 命令获取特定 pod 的提交 sha1 例如 kubectl get git commit sha1 pod name 目前还没有办法使用 kubectl 来实现你想要的 他们唯一可能的方法是如果你的 docker
  • 在 matplotlib 中向日期格式的时间序列添加垂直线

    我正在尝试向时间序列图中添加一条红色垂直线 其中 x 轴格式为 Y m d 我想添加该行的日期是 2013 年 5 月 14 日 只需在 plt show 之前添加一行 plt axvline x 2013 05 14 or plt axv
  • 如何在 C# 中对文件进行哈希处理

    如何使用 C 对文件进行哈希处理 有什么可用的 md5 crc sha1 等 是否有我应该继承的接口 我想对多个文件进行校验和并将其存储在数据库中 并使用我自己的两个校验和 哈希 1 如何使用 C 对文件进行哈希处理 您可以使用 NET 类
  • Rollup:从外部模块捆绑/嵌入 wasm 代码

    使用 rollup 我尝试捆绑一个 typescript 库 该库导入并调用包含 wasm 文件的 npm 模块 只有生成的包不包含 wasm 文件内容的痕迹 我怎样才能强制它捆绑网络程序集 这是我尝试过的关键文件 typescript s
  • 深度查找或搜索 JSON 中任何级别的键并替换其在 C# 中的值

    我也被一个问题所困扰 我能够将嵌套的 JSON 转换为 key Value 但现在我想将其转换回原来的 json 格式 由于我的问题 我无法使用 C 对象模型来执行此操作 因为我拥有的 JSON 文件是动态的 并且其结构会随着时间的推移而变
  • Ruby Webrick HTTP 身份验证

    我怎样才能做同样的身份验证工作这一页 http microjet ath cx webrickguide html HTTP Authentication html使用这样的子类 class Configuration lt HTTPSer
  • 为什么 std::iterator 被弃用?

    模板类std iterator http en cppreference com w cpp iterator iterator在 C 17 中已被弃用 为什么这样 这是一个方便的方法来确保std iterator traits http
  • d3.js v4,如何在鼠标悬停时有一条线跟随鼠标,同时也有一个圆圈跟随路径?

    这是我的 js 小提琴 https jsfiddle net DerNalia 3wzLv9yg 1 https jsfiddle net DerNalia 3wzLv9yg 1 我一直在尝试从这里解释代码 带有鼠标悬停工具提示的多系列折线
  • Bootstrap打印CSS去除背景颜色

    当我使用引导程序时 当我尝试打印页面时 它会从所有内容中删除背景颜色 我网站上的几乎所有内容都使用引导类 因此我想避免在引导程序之外使用大量手动 CSS 我发现 bootstrap 使用 media print删除背景颜色 我也使用引导主题
  • std::integral_constant 的否定

    抱歉问了这么简单的问题 但我无法轻松找到答案 谷歌没有说任何关于 C 否定积分常量 和类似查询的有趣内容 C 11 中是否有任何特征使得std true type from std false type反之亦然 换句话说 我想要一些更具可读
  • 使用模拟获取所有日志输出

    我想用模拟获取所有日志输出 我搜索过 但是 只找到了显式模拟logging info或logging warn的方法 我需要所有输出 无论设置的日志记录级别如何 def test foo def my log logs append wit
  • Nginx 重定向到错误的虚拟主机

    我的一个 nginx conf 文件中有大约 1300 个虚拟主机 所有这些都具有以下布局 它们在虚拟主机文件中依次列出 现在我的问题是有时我的浏览器将 site2 重定向到 site1 由于某种原因 域名不匹配 看起来 nginx 总是重
  • 如何使用 Python IMAP 从 Gmail 邮件中删除“来自无人”和“内容类型”?

    尽管我在从很多网站进行大量搜索后完成了大部分工作 但我仍然无法获得我想要的正确输出 Code import imaplib import smtplib import email mail imaplib IMAP4 SSL imap gm
  • 使用自定义任务工厂创建但不启动任务?

    我希望能够在不启动任务的情况下创建任务 类似于运行var a new Task a Start 但有一家定制工厂 工厂提供StartNew 但我找不到分离这两个动作的方法 这可能吗 A TaskFactory基本上是两组默认选项 创建和继续
  • 保存 H2o 数据帧

    我正在使用 10GB 的训练数据框 我使用 H2o 库来加快计算速度 每次加载数据集时 我都应该将数据帧转换为 H2o 对象 这需要花费很多时间 有没有办法存储转换后的 H2o 对象 这样我每次在构建模型时都可以跳过 as H2o trai
  • SwiftUI:清除模态状态或重新初始化

    我有一个 SwiftUI 模式 我想清除其状态或重新初始化 考虑到此模式可以打开可能具有某种状态的其他模式 重新初始化将是首选 这是一个简单的例子 import SwiftUI struct OtherView View State var
  • “fast_abs_path”在什么方面“危险,但可能更快”?

    The Cwd 模块的文档 http perldoc perl org Cwd html abs path and friends指出fast abs path是 更危险 但可能更快的版本abs path 它在什么方面有危险 在什么情况下它