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

WSL Ubuntu22.04运行CMU15-213 Shell Lab测试时sdriver.pl找不到的解决办法

问题场景
  • 环境:WSL Ubuntu 22.04,CMU 15-213 Shell Lab 实验环境
  • 操作:执行make test01命令测试自定义Shell
  • 错误提示:./sdriver.pl: not found
  • 已完成操作:将/usr/bin/perl添加到$PATH环境变量
快速修复命令

直接执行以下命令,覆盖最常见的问题:

  1. 给测试脚本添加执行权限:
    chmod +x sdriver.pl
    
  2. 修正脚本的shebang行(确保指向正确的perl路径):
    sed -i '1c #!/usr/bin/perl' sdriver.pl
    
  3. 若脚本是Windows换行格式,转换为Unix格式:
    sudo apt install dos2unix && dos2unix sdriver.pl
    
  4. 手动执行测试(绕过Makefile调用问题):
    perl sdriver.pl -t trace01.txt -s ./mysh -a "-p"
    
详细排查步骤

如果快速修复无效,按以下步骤逐一排查:

  • 确认脚本存在:执行ls -l sdriver.pl,检查输出中是否有该文件
  • 检查perl安装状态:执行which perl,确认输出为/usr/bin/perl,若为空则安装perl:sudo apt install perl
  • 查看Makefile调用逻辑:打开Makefile,确认调用sdriver.pl的语句是否为./sdriver.pl,若脚本路径错误则修正
  • 验证脚本可执行性:直接执行./sdriver.pl,查看具体错误(若提示Permission denied则是权限问题;若提示No such file or directory可能是shebang错误或换行格式问题)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 10:53:16