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

Bash复制.ipynb文件报错及匹配前缀为py的文件命令咨询

Bash脚本问题解答

1. 原命令报错原因

错误核心是双引号抑制了通配符展开:
Bash中双引号仅允许变量、命令替换正常执行,会抑制通配符(*)的匹配逻辑。你将包含*.ipynb的路径整体包裹在双引号内,*会被当作普通字符处理,系统会直接查找名称为*.ipynb的字面文件,而非匹配所有.ipynb后缀的文件,因此触发找不到文件的报错。

正确的基础复制写法应该将通配符放在双引号外,同时保留路径变量的双引号避免路径含空格时出错:

CURRENT=${PWD}
cp "$CURRENT/notebooks/"*.ipynb "/home/jovyan/shared/public/whatever"

2. 仅复制以py开头的.ipynb文件实现

直接修改通配符匹配规则即可,将*.ipynb替换为py*.ipynb就能匹配所有前缀为py的ipynb文件,命令如下:

CURRENT=${PWD}
cp "$CURRENT/notebooks/py"*.ipynb "/home/jovyan/shared/public/whatever"

如果需要匹配的文件数量极大,也可以用更稳定的find实现避免参数过长问题:

find "$CURRENT/notebooks" -maxdepth 1 -type f -name "py*.ipynb" -exec cp {} "/home/jovyan/shared/public/whatever" \;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 14:15:07