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

如何用basename和dirname拆分文件路径并编写通用脚本?

基于basename和dirname的测试用例运行脚本

下面是满足需求的通用命令行脚本,利用dirname和basename拆分路径,自动切换目录并运行测试用例:

#!/bin/bash

# 验证参数数量
if [ $# -ne 1 ]; then
    echo "用法: $0 <测试用例文件的完整路径>"
    exit 1
fi

# 拆分路径为工作目录和文件名
working_dir=$(dirname "$1")
netlist=$(basename "$1")

# 切换工作目录(失败则退出)
cd "$working_dir" || { echo "错误:无法进入目录 $working_dir"; exit 1; }

# 执行测试用例运行命令
run "$netlist"

关键说明:

  • dirname "$1":提取传入路径的目录部分,例如输入/path/to/testcase/d.txt会返回/path/to/testcase
  • basename "$1":提取传入路径的文件名部分,上述输入会返回d.txt
  • 双引号包裹变量:确保能正确处理包含空格或特殊字符的路径
  • 目录切换失败处理:cd命令后加||判断,避免在错误目录执行后续命令

使用步骤:

  1. 将上述代码保存为run_test.sh
  2. 赋予脚本执行权限:chmod +x run_test.sh
  3. 运行脚本并传入测试用例路径:./run_test.sh /path/to/testcase/d.txt

注意:如果你的测试用例运行命令不是run,请替换成实际的命令名称

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 23:42:03