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

如何从文件名列表中筛选末尾带*的文件并复制到指定目录

批量筛选末尾带标记星号的文件并复制的解决方案

前提说明:

  • 你的文件名列表保存为file_list.txt
  • 源文件存放目录路径为/path/to/source,使用时替换为实际路径即可
  • 目标独立目录路径为/path/to/target,可手动提前创建,也可用下方命令自动创建

Linux/macOS 终端执行方案

适用场景:实际文件名不带末尾的星号(列表里的星号仅为选中标记)

# 自动创建目标目录,目录已存在也不会报错
mkdir -p /path/to/target
# 筛选匹配条目后批量复制
grep '\*$' file_list.txt | sed 's/\*$//' | xargs -I {} cp /path/to/source/{} /path/to/target/

适用场景:实际文件名本身末尾就带星号

mkdir -p /path/to/target
grep '\*$' file_list.txt | xargs -I {} cp /path/to/source/{} /path/to/target/

校验建议

执行复制前可以先把命令中的cp替换为echo,先打印待复制的文件名列表,确认匹配无误后再执行实际复制操作,避免误拷贝。


Windows PowerShell 执行方案

适用场景:实际文件名不带末尾的星号(列表里的星号仅为选中标记)

# 自动创建目标目录,目录已存在也不会报错
New-Item -ItemType Directory -Path /path/to/target -Force
# 筛选匹配条目后批量复制
Get-Content file_list.txt | Where-Object { $_ -match '\*$' } | ForEach-Object {
    $realFileName = $_.TrimEnd('*')
    Copy-Item -Path "/path/to/source/$realFileName" -Destination "/path/to/target/"
}

适用场景:实际文件名本身末尾就带星号

New-Item -ItemType Directory -Path /path/to/target -Force
Get-Content file_list.txt | Where-Object { $_ -match '\*$' } | ForEach-Object {
    Copy-Item -Path "/path/to/source/$_" -Destination "/path/to/target/"
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 17:06:02