如何打开相对于主目录的文件

2023-12-29

以下失败Errno::ENOENT: No such file or directory,即使文件存在:

open('~/some_file')

但是,我可以这样做:

open(File.expand_path('~/some_file'))

我有两个问题:

  1. 为什么不open将波形符处理为指向主目录?
  2. 有没有比更巧妙的方法File.expand_path?

不确定这在 Ruby 1.9.3 之前是否可用,但我发现最优雅的解决方案是使用Dir.home这是核心的一部分。

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

如何打开相对于主目录的文件 的相关文章

  • 为什么我不能“string”.print()?

    我的理解print 在 Python 和 Ruby 以及其他语言 中 它是字符串 或其他类型 上的方法 因为它的语法非常常用 打印 嗨 works 那么为什么不呢 hi print 在 Python 中或 hi print在红宝石工作 当你
  • 核心中的 find_by() 和 FinderMethods 中的 find_by() 有什么区别?

    目前我正在开发一个 gem 它会覆盖 ActiveRecordswhere 通过研究 我偶然发现了两种不同的find by实施 一个是在core https github com rails rails blob 5 0 stable ac
  • 在 Ruby 中将多个代码块作为参数传递

    我有一个需要代码块的方法 def opportunity opportunities 1 if yield performances 1 end end 我这样称呼它 opportunity some array empty 但是我如何传递
  • 机架测试失败:JSON 请求尚未响应

    我正在尝试为我的 Ruby 项目创建一个 JSON API 如下所示Ticketee https github com rails3book ticketeeYehuda Katz 书中提供的示例Rails 3 实际应用 http www
  • 供用户使用的 Rails 模型结构

    我是 Rails 新手 正在开发我的第二个 Rails 应用程序 该应用程序将为用户提供不同的角色 但某些用户将具有多个角色 该网站的每个用户都将是艺术家 一些用户将担任主持人的角色 我将如何构建这个 在我使用的一些 PHP 应用程序中 只
  • 帮助重构这个讨厌的 Ruby if/else 语句

    所以我有这个大而多毛的 if else 语句 我将跟踪号码传递给它 然后它确定它是什么类型的跟踪号码 我怎样才能简化这件事 具体来说就是想减少代码行数 if num length lt 8 tracking service false el
  • 在 Ruby 中将 Time 类对象转换为 RFC3339

    谷歌日历 API v2 https developers google com google apps calendar v2 developers guide protocol的时间相关查询需要采用 RFC3339 格式 当我在 需要 时
  • 在 cygwin 和 powershell 中查看不同的 gem 列表

    我用的是gem listpowershell 和 cygwin 中的命令都显示不同的 gem 列表 Cygwin 显示 LOCAL GEMS bundler 1 2 3 json 1 7 5 minitest 2 12 1 rake 0 9
  • to_proc 方法在 Ruby 中意味着什么?

    我正在学习 Rails 并关注这个线程 https stackoverflow com questions 1961030 我被困住了to proc方法 我认为符号只是字符串的替代品 它们就像字符串 但在内存方面更便宜 如果我还缺少任何其他
  • Ruby 元编程方法列表?

    刚刚开始学习 Ruby 元编程 看看 Object methods 我得到 Object methods gt allocate new superclass freeze lt gt lt lt gt gt to s included m
  • Rails has_many 通过带有附加属性的表单

    我正在尝试创建一个表单 允许用户向活动添加 编辑 删除位置 我目前找到的所有例子要么是HABTM表单 不允许编辑存在于表单中的附加属性 has many through配置 或仅列出现有关系 下面的图片显示了我想要完成的任务 该列表将显示每
  • 有没有办法编写一个匹配除文件夹中的文件之外的所有文件的全局模式?

    我需要编写一个文件 glob 它将匹配除特定文件夹中包含的文件之外的所有文件 例如 除了高级文件夹中包含的文件之外的所有文件 foo 我已经到达以下区域 foo 然而 这个 glob 似乎与 Ruby 中的任何文件都不匹配File fnma
  • Ruby 中 SecureRandom.urlsafe_base64(8) 的碰撞概率?

    我在用SecureRandom urlsafe base64 8 为了在我的系统中创建 URL 安全的唯一 ID 我想知道如何计算碰撞概率 我将大约 10 000 个这些 id 插入到一个数组中 我想避免检查其中一个键是否已经在数组中 但我
  • 回形针:从带扩展名的 url 上传

    我想通过 S3 存储上的回形针从 URL 上传图片 我与 Ruby 1 9 3 Rails 3 2 6 paperclip 3 1 3 aws sdk 1 3 9 我有我的图片模型 class Asset has attached file
  • 使用 Ruby 替换文件中的特定行

    我有一个如下所示的文本文件 a txt open close open open close open 我需要找到一种方法将第三行替换为 close 我做了一些搜索 大多数方法都涉及搜索该行而不是替换它 在这里不能真正做到这一点 因为我不想
  • heroku 语言区域设置不工作 I18n::MissingTranslationData

    在我的本地电脑上一切正常 但在 heroku 上我收到错误 我的 Heroku 控制台 PC HOME PC c rails konkurranceportalen master heroku console Ruby console fo
  • 迭代比线性代码慢吗?哪一个更可取?

    最近几天我脑子里一直有一个问题 在用 ruby 编写代码时 线性代码是否比迭代更快 更好 让我举个例子 有一个用于相同功能的代码块以两种不同的方式编写 Way 1 dog cat tiger each do pet name puts I
  • 从轨道控制器返回

    这是一个初学者 Rails 问题 我这样做之后 format xml head ok 如何从控制器端点返回而不显示视图 如果我此时放弃函数的末尾 我会得到我所期望的结果 但如果我调用 返回 我最终会进入视图 或者在我的情况下会出现缺少的视图
  • 日期时间到 NSDate

    如何转换字符串2010 11 19T20 00 00Z进入一个NSDate object 我尝试过使用 dateFormatter setDateFormat yyyy MM ddTHH mm ssZ 但看起来我的自定义格式样式错误 PS
  • 如何在保存父对象时确保子对象有效?

    假设我有两堂课 class User attr accessible name has one address validates name presence gt true validates associated address end

随机推荐

  • 我几乎每次都将 Stateless Widget 与 BLoC 一起使用。我错了吗?

    我很难理解如何使用 Flutter 处理某些特定情况下的状态 例如 假设我需要一个页面 单击按钮即可从 API 获取数据 这样的请求可能需要时间或者可能发生任何类型的问题 因此 我可能会使用 BLoC 模式在请求经历各种 状态 时正确通知用
  • JQuery 表排序器问题

    我在使用 JQuery 时遇到了一些问题表格排序器 http tablesorter com docs 插入 如果单击列标题 它应该按此列对数据进行排序 但存在一些问题 行未正确排序 1 1 2183 236 总行数包含在排序中 关于 2
  • 将简单查询转换为蛋糕查询?

    实际上我有 1 个查询 但我无法将其转换为 CakePHP 查询格式 result select from esl userresults where esl userresults esl songID esl lyrics id and
  • 多线程可以在单处理器系统上实现吗?

    我一直遵循这样的概念 多线程只能在多处理器系统上实现 其中有多个处理器分配给每个线程 并且每个线程可以同时执行 在这种情况下没有调度 因为每个线程都有单独的资源专用于它 但我最近在某处读到我也可以在单处理器系统上执行多线程 这是对的吗 如果
  • 是否可以使固定位置的 div 响应式?

    我一直在尝试使一些 SVG 数据图表具有响应性 但似乎无法通过应用于元素的当前 CSS position fixed 来做到这一点 如果可能的话 我正在寻找一种不依赖于媒体查询的解决方案 因为我有多个元素需要应用它 如果这是不可能的 那么在
  • 使用PostgreSQL plpython3u函数返回一个表

    我想退回桌子 该函数获取一个数组 查询为 select function name array agg column name from table name 我编码如下 create type pddesctype as count fl
  • C# 无法加载文件或程序集“Microsoft.SharePoint.Library”

    我正在 64 位版本的 Windows 7 上进行开发 运行 MOSS SharePoint 这是我的开发机器 现在 当我将 Web 服务应用程序部署到测试服务器 Windows 2003 32 位 未安装 Sharepoint 时 我收到
  • iOS 中的上滑菜单

    如何创建一个像相机胶卷中那样的 向上滑动 菜单 您可以在其中选择是否要将图像作为电子邮件 彩信等发送 An UI操作表 http developer apple com library ios documentation uikit ref
  • 带有动态 SQL 语句的游标 For 循环

    有没有办法用动态 SQL 语句执行 Cursor For 循环 如果我不想声明记录 我可以这样做 仅当我声明游标时 For I in cuSelect Loop dbms output put line I NAME End Loop 我可
  • 在三个js中前后移动相机

    如何沿着相机所面对的轨迹从固定点前后移动相机 我知道有几个控制脚本可以执行此操作 但我需要执行一些自定义操作 并且我无法分解它们的代码来找出如何隔离上述行为 我见过这个答案 https stackoverflow com questions
  • Pusher 客户端 /pusher/auth 返回错误 500(内部服务器错误)

    我正在开发一个快速聊天应用程序 以提高我的推送技能 并决定开始进入私人频道 我在相同的客户端代码上使用的公共频道应用程序并稍微调整了 App Events chatmessagesent 事件 更改了 return new Channel
  • 无法将类中的 PDO 对象初始化为属性[重复]

    这个问题在这里已经有答案了 可能的重复 将属性声明为对象 https stackoverflow com questions 2202995 declare property as object class core public dbh
  • 如何在不使用 UINavigationController 的情况下在新的非模型视图控制器中进行转换?

    以下似乎是一个典型的用例 您使用显示登录屏幕的 LoginViewController 启动应用程序 用户成功登录后 您希望显示应用程序的主视图 我们将其称为 MainViewController 您不想将 LoginViewControl
  • SimpleXML SOAP 响应命名空间问题

    在为此花费了几个沮丧的时间后 我请求您的帮助 我正在尝试从 SOAP 响应中获取特定节点的内容 响应是
  • Linux下如何检查串口是否打开?

    如何使用 Posix C 函数检查 Linux 中的串行端口是否已打开 我想检查串口的状态来检查串口是否打开 我想知道什么方法适用 检查文件描述符查看串行端口是否打开并且 检查串口文件名查看串行端口是否打开 在下面的示例中为 dev tty
  • 我应该访问受保护的方法进行单元测试吗?

    和 关联这个问题 https stackoverflow com questions 15197141 how to properly test an abstract class我之前问过 我的单元测试再次陷入困境 我当前的问题与测试有关
  • 使用 JavaScript 获取所有输入对象的列表,无需访问表单对象

    我需要得到所有input对象并操纵onclick param 下面的工作是为了 a 链接 寻找这样的东西input tags for var ls document links numLinks ls length i 0 i a
  • 计算每个客户的平均订单间隔时间

    我已经搜索遍了 但似乎无法找到如何计算每个客户的订单之间的平均时间 我正在使用 Oracle SQL Developer 我尝试过使用 lag 函数 但没有任何乐趣 下面的示例数据显示客户在 3 个不同的场合购买过商品 所有购买之间的平均时
  • SharedPreferences 和 PreferenceFragment

    我已经在 ANdroid 开发者网站上完成了 PreferenceFragments 和 SharedPreferences 的示例 但是我现在遇到了问题 我希望能够从不同的活动访问 设置 屏幕中的首选项 但我不知道我的首选项片段生成的首选
  • 如何打开相对于主目录的文件

    以下失败Errno ENOENT No such file or directory 即使文件存在 open some file 但是 我可以这样做 open File expand path some file 我有两个问题 为什么不op