You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行. ./run.sh提示'.'不是内部或外部命令的原因及解决方法

关于. ./run.sh指令报错的解答

指令中.的具体含义

.是Shell环境的内置命令,等价于source命令,作用是在当前终端的Shell进程内直接执行指定的脚本文件,不会启动独立的子Shell进程。
指令里两个.的作用完全不同:第一个是命令本身,后面跟的./run.sh是传给该命令的参数,指代「当前工作目录下的run.sh脚本文件」,两者之间必须有空格分隔。

是否属于bash指令

它不是bash独有的指令,是所有兼容POSIX标准的Shell(包括sh、bash、zsh等常见类Unix Shell)都原生支持的内置命令,不存在独立的外部可执行文件。
你遇到报错的核心原因是当前使用的运行环境是Windows系统的CMD或PowerShell,这两个Windows原生终端不兼容POSIX标准,根本没有这个内置命令,所以会提示无法识别.。

是否和git相关

该指令和Git没有任何关联。Git是版本控制工具,这条指令属于Shell脚本执行类操作,和Git的功能、命令没有关系。

报错解决方法

根据你的运行环境选对应操作即可:

  • Windows环境:
    • 优先打开Git安装时自带的Git Bash终端,cd切换到asteroid项目对应recipes的目录后,再执行. ./run.sh即可
    • 也可以使用WSL(Windows Linux子系统),进入WSL终端后切到对应项目目录执行命令
    • 注意不要把命令写错成../run.sh,这种写法指代上级目录下的run.sh,和原命令语义完全不同
  • macOS/Linux环境:
    • 确认当前使用的是bash/zsh/sh类Shell终端
    • 先给脚本添加执行权限:chmod +x run.sh
    • 再执行原命令即可,也可以换成可读性更强的等价写法source ./run.sh,执行效果完全一致

补充说明:官方文档要求用./source执行run.sh,是因为这类项目的run.sh通常包含环境变量配置、虚拟环境激活等操作,如果直接用./run.sh启动子Shell执行,脚本运行结束后子Shell自动退出,配置的环境变量不会在当前终端生效,会导致后续操作失败。

内容的提问来源于stack exchange,提问作者cchoi1022

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 15:48:18