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

Linux Shell脚本无法正常切换目录及创建Django项目结构求助

解决Shell脚本搭建Django项目的核心问题

1. 修复source: not found错误

  • 原因:用sh执行脚本时,部分POSIX兼容shell(如dash)不支持source命令,它是bash的内置命令。
  • 解决方法:
    • 将脚本里的source替换成.,比如把source venv/bin/activate改成. venv/bin/activate
    • 或者直接用bash setup3.sh proj222 app222运行脚本,而非sh

2. 解决找不到manage.py的问题

  • 原因:脚本目录切换逻辑错误,未正确进入Django项目根目录就执行依赖manage.py的命令;另外django-admin startproject的参数使用不当会导致项目目录嵌套,也会找不到文件。
  • 解决方法:
    • 先创建并进入项目目录,再执行Django初始化命令,确保路径正确:
      # 创建项目目录并进入
      mkdir -p "$1" && cd "$1"
      # 用.让项目文件直接生成在当前目录,避免嵌套
      django-admin startproject "$1" .
      # 此时当前目录下就有manage.py,后续命令可正常执行
      python manage.py startapp "$2"
      
    • 变量要加双引号(如"$1"、"$2"),避免路径/名称含空格时出错。

额外优化建议

  • 激活虚拟环境后可加判断,确保步骤正常执行:
    python -m venv venv
    . venv/bin/activate || { echo "虚拟环境激活失败"; exit 1; }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 21:40:51