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

执行bash脚本时提示git命令不存在报错该如何解决?

问题原因

你脚本中覆盖了系统特殊环境变量PATH:
PATH是类Unix系统中用于检索可执行程序路径的内置环境变量,你在脚本中先声明了PATH=""清空了原有值,后续又将其赋值为自定义的文件路径,导致系统无法检索到git命令的安装位置,因此抛出command not found报错。

解决方案

优先选择第一种方案:

  • 替换自定义变量名,不要使用PATH作为自己的变量名,修改后参考代码如下:
#!/bin/bash  
echo "commit and push all files in this folder: "

INPUTPATH=""
FILENAME="README2"
# 改用不与系统变量冲突的自定义变量名
TARGET_PATH=""

if [ -s text.txt ]
then
    echo "file is not empty"

    INPUTPATH=$(<text.txt)
else
    read INPUTPATH
    echo "$INPUTPATH" > text.txt
fi

TARGET_PATH="$INPUTPATH/$FILENAME"
for run in {1..10}; do
echo $RANDOM >> $TARGET_PATH
done
cd $INPUTPATH && git commit -am "commit"
cd $INPUTPATH  && git status
  • 临时兼容方案:先在终端执行which git获取git的绝对安装路径(通常为/usr/bin/git),将脚本中所有git替换为该绝对路径即可,该方案无需修改变量名,但不推荐长期使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 16:36:03