如何编写单行Shell脚本批量移动.js文件并修改后缀为.txt
批量移动并重命名文件的单行实现方案
适用 Linux / macOS (Bash/Zsh 类 shell 环境)
前置操作(目标目录不存在时执行)
mkdir -p public/api
核心单行命令
for f in src/component/fb/*.js; do mv -- "$f" "public/api/$(basename "${f%.js}.txt")"; done
逻辑说明
- 遍历匹配
src/component/fb/路径下所有.js后缀的文件 - 通过参数扩展
${f%.js}移除原文件的.js后缀,拼接.txt生成新文件名 - 调用
mv命令直接将文件移动到目标public/api路径下,同时完成重命名
适用 Windows PowerShell 环境
前置操作(目标目录不存在时执行)
New-Item -ItemType Directory -Path public/api -Force
核心单行命令
Get-ChildItem -Path src/component/fb -Filter *.js | Move-Item -Destination { Join-Path public/api ($_.BaseName + '.txt') }
逻辑说明
- 先读取
src/component/fb路径下所有后缀为.js的文件对象 - 逐文件读取不含后缀的文件名
BaseName,拼接.txt作为新文件名 - 通过管道直接传递给移动命令,写入到目标路径
内容的提问来源于stack exchange,提问作者Chris Chilcoat
相关产品推荐
相关产品推荐

