2011-02-09 42 views
0
gal-harths-iMac:~ galharth$ ruby -v 
-bash: ruby: command not found 
gal-harths-iMac:~ galharth$ open -e .bash_profile 
-bash: open: command not found 

我该怎么办?当我在终端输入命令时,我得到一个错误 - “找不到命令”

我的.bash_profile和的.profile和.bashrc里都是空的,我需要写东西呢?..

+0

如果你加入,你一直在努力做的事情的描述这将有助于。默认情况下,你应该拥有〜/ .bashrc或〜/ .bash_profile,并且你的路径应该已经被定义为允许ruby被发现。 Ruby在Mac OS上默认安装,但由于Apple有使用它的应用程序,因此需要单独安装。如果您要安装Ruby,请使用[RVM](http://rvm.beginrescueend.com/rvm/install)来管理沙盒中的所有内容。 – 2011-02-09 15:10:40

+0

@tin男人是对的。你不需要任何东西在你的bash文件中,你可以通过编辑它们来扩展默认的bash设置,但是它们应该是空白的,除非你需要特别的东西 – 2011-02-09 18:23:29

回答

4

我怀疑你有什么替代您的默认路径(如的.bash_profile或.bashrc)中开放是在OS X上一个有效的命令,对我来说man open返回

NAME 
    open -- open files and directories 

SYNOPSIS 
    open [-e] [-t] [-f] [-W] [-R] [-n] [-g] [-h] [-b bundle_identifier] 
      [-a application] file ... [--args arg1 ...] 

DESCRIPTION 
    The open command opens a file (or a directory or URL), just as if you had 
    double-clicked the file's icon. If no application name is specified, the 
    default application as determined via LaunchServices is used to open the 
    specified files..... 

同样,它可能是红宝石安装,但不是在路径上。我最好的猜测是删除或重命名您的.bashrc和.bash_profile文件,并以该用户身份注销并重新登录,以重置您的bash会话。

为了测试是否是用户层面的问题,在系统首选项创建一个新帐户 - >帐户,然后登录为用户,打开一个终端输入ruby -vman open,等等看,如果你可以做到这一点一个默认的用户帐户。如果可行,那么肯定会在你的'gal-harth'帐户中定制一些bash设置。

0

没有安装红宝石。你需要从他们的网站here安装它。 同样,“打开”不是我听说过的任何bash命令。

经过进一步的思考,你是否试图安装rvm?

+0

我安装了ruby ..其工作过的我之前 - ruby​​ -v和open命令。 。我认为我错误地删除了.bash_profile或.profile – gal 2011-02-09 14:32:19

+0

Ruby由Mac OS安装并由系统使用,不应该由用户修改。可以在`/ usr/local`中安装一个新版本,这是从源代码安装的默认版本。对大多数用户来说更好的解决方案是使用RVM。 – 2011-02-09 15:06:17

0

如果你已经安装了Ruby,它的位置是否已经设置在你的PATH变量中?如果没有,你可以把它添加到你的.bash_profile这样的:

echo 'export PATH=/wherever/ruby/is/located:$PATH' >> ~/.bash_profile 
0

东西搞砸了你的PATH - 你不需要有一个.profile(或其任何变体)来正确设置默认PATH。一般来说,当PATH被搞砸时,这是因为它在各种配置文件之一中被设置错误。当你说.bash_profile和.profile和.bashrc是空的时,你的意思是它们存在但没有任何内容,或者它们根本不存在?另外,你有.bash_login或.bashrc文件吗?

我想仔细看看你的主目录。使用/bin/ls -ld ~/.*列出您的主目录中的所有不可见文件,并在名称中查找包含“sh”,“profile”或“rc”的任何内容。此外,运行/usr/bin/grep PATH ~/.*以查看是否有任何不可见文件提及了PATH - 如果有的话,他们可能是嫌疑人。

2

找出错误的第一步是看看你目前的PATH是什么。

echo $PATH 

如果它返回一个空白行,则会出现可怕的错误。您可以通过运行暂时解决这个问题:

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin 

这应该让你ruby,以及open,和man,和一堆其他的命令。

事情是,PATH说“查找这些目录中的二进制文件”,而不是“这是我想使用的二进制文件的明确列表。”

-2

只需键入bash_filename./_filename

相关问题