Ubuntu下批量将文件内容指定代码替换为自身文件名对应代码
批量替换Ubuntu下XLS文件内容的解决方案
针对你需要批量替换多个XLS文件中K036代码为对应文件名中Kxxx代码的需求,可以通过以下bash脚本实现:
步骤1:创建替换脚本
在目标文件所在目录下创建一个名为replace_kcode.sh的脚本,内容如下:
#!/bin/bash # 遍历所有ZAF_MM_CYCLE_K开头的XLS文件 for file in ZAF_MM_CYCLE_K*.XLS; do # 从文件名提取K开头的代码(如K051) kcode=$(echo "$file" | grep -o 'K[0-9]*') # 替换文件中所有K036为当前文件对应的kcode sed -i "s/K036/$kcode/g" "$file" done
步骤2:赋予脚本执行权限
执行以下命令给脚本添加可执行权限:
chmod +x replace_kcode.sh
步骤3:运行脚本
在文件所在目录下执行脚本,完成批量替换:
./replace_kcode.sh
可选备份方案
如果需要保留原文件备份,可以修改sed命令,生成带.bak后缀的备份文件:
sed -i.bak "s/K036/$kcode/g" "$file"
执行后原文件会被保存为文件名.XLS.bak,修改后的内容在原XLS文件中。
内容的提问来源于stack exchange,提问作者Jonibek
相关产品推荐
相关产品推荐

