macOS pycharm /bin/sh: ffmpeg: command not found

博客作者在升级MacOS后,遇到PyCharm中使用ffmpeg库时报错/bin/sh:ffmpeg:commandnotfound。尝试了重新安装ffmpeg通过pip和brew均未解决问题。最终发现是路径问题,通过在命令行中使用whichffmpeg找到ffmpeg的实际路径,将代码中的ffmpeg命令改为全路径/usr/local/bin/ffmpeg,问题得到解决。

macOS pycharm /bin/sh: ffmpeg: command not found

今天突然把电脑升级到了最新版本,升级之前就知道会产生很多问题,比如一些应用程序不能用了、比如之前配好的环境出现问题… 但是头铁还是升级了。

于是果然遇到了问题:

在搞毕业设计的时候在pycharm里用到了ffmpeg这个库,升级之后突然报错/bin/sh: ffmpeg: command not found,作为一个菜鸟一开始完全懵了,于是我开启以下挣扎:

  • 重新pip install ffmpeg–python 不行
  • 重新brew install ffmpeg 不行
  • 于是开始上网搜,没有什么可用的,或者说是我看不懂
  • 突然,我突发灵感,我在终端使用ffmpeg这个命令,发现可以,确实就是路径的问题,于是之后就找了解决办法

上面都是废话,可以不看,下面才是解决方法:

  • 之前的命令是:

    command = "ffmpeg -i {}.mp4 -ab 320k -ac 2 -ar 44100 -vn VoiceData/testingData/{}.wav".format(
         file_name, file_name
    )
    
  • 我把它改成

    command = "/usr/local/bin/ffmpeg -i {}.mp4 -ab 320k -ac 2 -ar 44100 -vn VoiceData/testingData/{}.wav".format(
         file_name, file_name
    )
    

    /usr/local/bin/ffmpeg可以在终端使用which ffmpeg查看
    在这里插入图片描述

  • 然后就成功了

在这里插入图片描述

<think>嗯,用户这次遇到了PyCharm中/bin/bash无法识别的问题,而且之前提供的历史引用里提到了两个相关错误案例:一个是conda的PATH配置问题但实际并非路径错误,另一个是Windows环境下的命令行语法错误。看起来用户可能已经尝试过常规的路径修复方法但无效。用户的核心诉求其实很明确:在PyCharm里解决CommandNotFoundException。但要注意引用1中提到的陷阱&mdash;&mdash;用户的环境变量明明配置正确却仍然报错,说明问题可能不在表面PATH设置。这里需要分三层排查:首先判断bash是否存在。Linux/macOS下/bin/bash是标准路径,但Windows用户可能通过WSL或GitBash安装,路径通常是/mnt/c/ProgramFiles/Git/bin/bash.exe。PyCharm在Windows调用WSL的bash时需要完整.exe后缀,这点容易被忽略。其次是权限问题。引用2里提到'+'不是有效命令,这个细节很有趣&mdash;&mdash;可能暗示用户执行的是复合命令,而PyCharm默认调用bash-c"command"时,如果命令里包含特殊字符如&>就需要严格转义。再往深处想,用户会不会混淆了Shell类型?PyCharm支持配置多种终端类型(cmd/powershell/WSL),如果用户的项目环境是Linux但错误选择CMD解释器,就会导致bash不可用。这一点需要重点验证。解决方案的设计需要覆盖所有可能性:1.环境检查:要求用户验证bash真实路径。因为PyCharm的Terminal插件和Run/DebugConfigurations对路径格式要求不同2.权限矫正:特别是Windows系统执行chmod可能无效,需改用icacls或属性面板3.配置验证:PyCharm有三个地方可能覆盖终端设置(全局设置/项目设置/Run配置),需全部检查用户上次提供conda问题启示我们:有时候PATH看似正确但实际被其他配置覆盖。所以补充建议用pycharm.sh打印环境变量,这是关键诊断手段。另外考虑到用户用PyCharm开发可能涉及跨平台项目,需要特别强调WSL路径的格式转换问题。</think> 针对PyCharm中出现的`/bin/bash CommandNotFoundException`错误,以下是系统性的解决方案: --- ### **一、问题根源分析** 此错误通常源于: 1. **环境变量配置错误**:系统或PyCharm未正确识别bash路径 2. **文件权限问题**:bash执行权限缺失 3. **路径指向错误**:PyCharm终端配置指向无效路径 --- ### **二、解决方案** #### ✅ 步骤1:验证Bash是否存在 ```terminal # macOS/Linux which bash # 应返回 /bin/bash 或 /usr/bin/bash ls -l /bin/bash # 检查文件是否存在 # Windows (WSL环境) where.exe bash.exe # 检查WSL路径 ``` #### ✅ 步骤2:环境变量修正 **Mac/Linux:** ```terminal echo $PATH # 确保包含 /bin 或 /usr/bin # 若无,在 ~/.bash_profile 或 ~/.zshrc 添加: export PATH="/usr/bin:$PATH" ``` **Windows:** 在PyCharm中修改环境变量: ``` Settings > Build > Terminal > Environment variables 添加:Name: PATH Value: C:\Windows\System32 ``` #### ✅ 步骤3:检查文件权限(Linux/macOS) ```terminal chmod +x /bin/bash # 添加执行权限 ls -l /bin/bash # 应显示 -rwxr-xr-x ``` #### ✅ 步骤4:PyCharm终端配置 1. 打开 `Settings > Tools > Terminal` 2. 修改Shell路径: - macOS/Linux: `/bin/bash` - Windows WSL: `"C:\Windows\System32\wsl.exe"` 3. 若使用Git Bash: ```terminal "C:\Program Files\Git\bin\bash.exe" --login -i ``` #### ✅ 步骤5:重载配置(关键) ```terminal # 执行后重启PyCharm source ~/.bash_profile # Mac/Linux pycharm.sh # Linux重载脚本 ``` --- ### **三、高阶排查** ```mermaid graph TD A[报错 Command Not Found] --> B{检查终端类型} B -->|Bash| C[验证PATH变量] B -->|CMD/PowerShell| D[检查系统路径] C --> E[修改.bashrc/.zshrc] D --> F[添加System32到PATH] E --> G[重启终端] F --> G G --> H{是否解决?} H -->|是| I[完成] H -->|否| J[重装Shell环境] ``` --- ### **四、预防措施** 1. **PyCharm配置同步**:通过菜单栏 `File > Manage IDE Settings > Export Settings` 备份配置 2. **PATH验证脚本**:在PyCharm的启动脚本中添加: ```bash # macOS/Linux echo "当前PATH: $PATH" >> /tmp/pycharm_path.log # Windows echo %PATH% > C:\path_log.txt ``` --- ### **五、常见误操作排查** - 路径拼写错误:检查 `/bin/bash` 是否写成 `/bin/sh` - 权限问题:macOS需关闭SIP才能修改系统目录 - 虚拟环境冲突:禁用虚拟环境后重试 - 防病毒软件拦截:临时关闭安全软件测试 > **重要提示**:Windows系统需区分WSL与原生bash路径差异。若使用Git Bash,确保路径指向安装位置(如 `C:\Program Files\Git\bin`)[^1][^2]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值