3

在我的~/.bashrc,我有一个功能:

function sayHi() {
    echo "hi, $@"
}

在 Ruby 中,我想:

`sayHi "friend"`

但是,sayHi在任何上下文 ruby​​ 运行execsystem.

我怎样才能让 Ruby 使用我的函数.bashrc

4

1 回答 1

6

.bashrc仅针对交互式 shell 运行。在 Ruby 中使用反引号执行命令时,它不会在交互式 shell 中执行命令。

您可以通过运行强制交互式 shell bash -i。例如,要在交互式 shell 下运行命令,请使用:

`bash -ic 'sayHi "friend"'`
于 2012-11-05T23:07:54.927 回答