【问题标题】:Troubleshooting "[Errno 2] No such file or directory"疑难解答“[Errno 2] 没有这样的文件或目录”
【发布时间】:2013-09-09 19:51:40
【问题描述】:

当我尝试使用 sass 时,我收到“权限被拒绝”。我正在使用 Sublime Text 2、Ruby 的当前版本和bones theme

这是我的终端/代码的截图:

这是我在 SublimeText 中保存时的内容:

[Errno 2] No such file or directory
[cmd:  [u'sass', u'--update', u'/Users/jschreiber/sites/wp-content/themes/eddiemachado-bones-405349e/library/scss/_base.scss:/Users/jschreiber/sites/wp-content/themes/eddiemachado-bones-405349e/library/scss/_base.css', u'--stop-on-error', u'--no-cache']]
[dir:  /Users/jschreiber/sites/wp-content/themes/eddiemachado-bones-405349e/library/scss]
[path: /usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin]
[Finished]

这是我的gem env

administrators-MacBook-Air:~ jschreiber$ gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 2.0.7
  - RUBY VERSION: 2.0.0 (2013-06-27 patchlevel 247) [x86_64-darwin12.3.0]
  - INSTALLATION DIRECTORY: /Users/jschreiber/.rvm/gems/ruby-2.0.0-p247
  - RUBY EXECUTABLE: /Users/jschreiber/.rvm/rubies/ruby-2.0.0-p247/bin/ruby
  - EXECUTABLE DIRECTORY: /Users/jschreiber/.rvm/gems/ruby-2.0.0-p247/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-12
  - GEM PATHS:
    - /Users/jschreiber/.rvm/gems/ruby-2.0.0-p247
    - /Users/jschreiber/.rvm/gems/ruby-2.0.0-p247@global
  - GEM CONFIGURATION:
    - :update_sources => true
    - :verbose => true
    - :backtrace => false
    - :bulk_threshold => 1000
  - REMOTE SOURCES:
    - https://rubygems.org/

当我按照崇高的文本说明运行 subl 时 - 仍然出现错误:

administrators-MacBook-Air:~ jschreiber$ ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
ln: /Users/jschreiber/bin/subl: No such file or directory
administrators-MacBook-Air:~ jschreiber$ ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
administrators-MacBook-Air:~ jschreiber$ subl
administrators-MacBook-Air:~ jschreiber$ ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
ln: /Users/jschreiber/bin/subl: No such file or directory
administrators-MacBook-Air:~ jschreiber$ ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
ln: /usr/local/bin/subl: File exists
administrators-MacBook-Air:~ jschreiber$ subl
administrators-MacBook-Air:~ jschreiber$ sites/wp-content/themes/eddiemachado-bones-405349e/library/scss
-bash: sites/wp-content/themes/eddiemachado-bones-405349e/library/scss: is a directory
administrators-MacBook-Air:~ jschreiber$ sass --watch style.scss:../css/style.css
>>> Sass is watching for changes. Press Ctrl-C to stop.
    directory ../css
Errno::EACCES: Permission denied - ../css
            Use --trace for backtrace.

【问题讨论】:

  • 如果我添加跟踪命令,我会得到这个pastebin.com/Dr2gTNPd
  • 如果您希望在调试应用程序问题时有用,请不要添加代码屏幕截图。我们需要可以复制/粘贴到编辑器并运行的真实代码。当您说“Ruby 的当前版本”时,您是什么意思?很多人都知道现在的版本是什么,你可能错了,以后会改。此外,真实文本有助于 Google 索引您的问题,使其对可能正在搜索相同答案的其他人有用。另外,不要将链接指向问题的重要部分。链接最终会断开,使您的问题毫无价值。
  • @theTinMan 这是终端中的所有内容:pastebin.com/CKNcCv5X 至于实际的主题,我没有更改任何内容,可以直接从源下载。
  • ruby-2.0.0-p247,昨天更新
  • 您使用的是 Mac OS。你是如何升级你的 Ruby 的? gem env 说什么?将该信息粘贴到您的问题中,除非该信息超出问题文本框可用的大小,否则请勿添加其他链接。

标签: ruby sass sublimetext2


【解决方案1】:

让我们看看你的“当前版本的 Ruby”...

您的错误显示了您的路径:

[path: /usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin]

将其分解为更具可读性的结果:

[
  path
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/local/bin
  /usr/bin
  /bin
  /usr/sbin
  /sbin
]

这有什么问题?除了你的路径中有 18 个 /usr/local/bin 的冗余实例,这会在搜索路径时减慢所有命令行应用程序的速度,另一个问题是,如果你的路径中没有一个是当前的 Ruby除非您从源代码安装,否则重新使用 Mac OS。

我用过 RVM

那么您要么没有关注 the directions for installation,要么使用了 RVM 的系统范围安装,这不是必要的,甚至 RVM 作者也不推荐。阅读完整的“安装”说明,然后按照该页面上“试用新的 RVM 安装”部分中的步骤操作。

要将 Ruby 与 RVM 一起使用,您必须修改 ~/.bash_profile 以在 shell 启动时加载 RVM,另外您必须告诉 RVM 使用哪个 Ruby:

rvm use ruby-2.0.0-p247 --default

这在安装说明中有介绍。

Sublime 也很可能没有正确设置。尝试使用subl 命令从命令行启动 Sublime,然后尝试运行您的代码。如果可行,则意味着 Sublime 不知道 RVM 托管的 Ruby 的适当路径,您需要修复它。 “Sublime Text 2 Integration With RVM and Rspec: Take Number 2”似乎是合理的。

使用subl 命令启动 Sublime 与通过启动器打开它的工作方式不同的原因是命令行使用 PATH 变量,而启动器没有。要协调这些,您需要修改 plist 文件。有关信息,请参阅“How to set PATH for Finder-launched applications”。

【讨论】:

  • 好的,那我该如何解决呢?就像我说的,我不是一个有经验的用户。
  • 您仔细阅读说明,不要相信您在互联网上阅读的所有内容,当它说是做某事的说明时。那里有大量过时的信息,还有更多完全错误的信息。按照源站点上的说明进行操作,例如 RVM 的。即使 Stack Overflow 也可能是错误的,但通过这里的同行评审过程,如果您仔细阅读,您更有可能获得有用的信息。
  • subl 命令在我尝试时找不到。管理员-MacBook-Air:~ jschreiber$ subl -bash: subl: 找不到命令 管理员-MacBook-Air:~ jschreiber$ subl --help -bash: subl: 找不到命令
  • 那你需要关注 Sublime Text installation directions.
  • 我可能在系统范围内安装了 RVM,尽管我从未使用过 sudo 命令。完全卸载/重新安装会比尝试修复更简单吗?
猜你喜欢
  • 2012-08-11
  • 1970-01-01
  • 1970-01-01
  • 2019-11-20
  • 2015-11-19
  • 2013-03-21
  • 2015-04-09
  • 2019-05-26
  • 2018-12-06
相关资源
最近更新 更多