【问题标题】:What does it mean #!/conda_env/myenv/bin/Rscript in Rscript?Rscript 中的 #!/conda_env/myenv/bin/Rscript 是什么意思?
【发布时间】:2022-11-28 22:12:52
【问题描述】:

我是 R 脚本的新手。 我在 R 脚本的开头发现,

#!/conda_env/myenv/bin/Rscript
library('httr')

请问#!/conda_env/myenv/bin/Rscript 是什么意思? 如果我不添加#!/conda_env/myenv/bin/Rscript 会怎样?

谢谢

【问题讨论】:

    标签: r


    【解决方案1】:

    符号#! 被称为shebang。

    当脚本以 #!/conda_env/myenv/bin/Rscript 开头时,您可以从终端运行它而无需指定它需要 Rscript。如果您的文件名为myfile.R,您可以运行它

    /path/to/myfile.R
    

    如果删除此行,则必须使用以下命令运行该文件

    /conda_env/myenv/bin/Rscript /path/to/myfile.R
    

    编辑:如果/path/to/myfile.R 无法运行,您必须使其可执行。在您的终端中,这可以使用命令 chmod u+x myfile.R 完成。

    【讨论】:

    • 你好 robertdj,当我在“myfile.R”的开头定义 #! /conda_env/myenv/bin/Rscript 时,是否意味着 myfile.R 中的所有包都将从环境 /conda_env/myenv 中使用?
    • 如果我想从新创建的环境 (myenv_for_r) 导入所有 R 库,而 python 脚本将使用另一个环境 (myenv_for_py),我如何激活 R 脚本中的 myenv_for_r?流程是我将首先激活 myenv_for_py 并运行将在其中运行 R 脚本的 python 脚本。但是 R 脚本将从 myenv_for_r 环境中导入所有包。
    • R 没有像 Python 这样的环境。我不通过 conda 使用 R,所以我不知道它是如何工作的。这些问题与您的 OP 并不真正相关,但似乎与 R 包更相关,因此请考虑提出一个新问题。如果它回答了您的问题,请点赞和/或接受答案。
    • 也许添加一个关于可执行位的注释?
    • @margusl 好点,我会的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-30
    • 2015-05-18
    • 2021-12-09
    • 2019-05-03
    • 2017-01-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多