千家信息网

如何编写Shell脚本批量修改文件后缀名代码

发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,本篇内容介绍了"如何编写Shell脚本批量修改文件后缀名代码"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有
千家信息网最后更新 2025年11月15日如何编写Shell脚本批量修改文件后缀名代码

本篇内容介绍了"如何编写Shell脚本批量修改文件后缀名代码"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

代码如下:

#!/bin/bash
oldext="JPG"
newext="jpg"
dir=$(eval pwd)

for file in $(ls $dir | grep .$oldext)
do
name=$(ls $file | cut -d. -f1)
mv $file ${name}.$newext
done
echo "change JPG=====>jpg done!"

下面对针对这个程序作简单说明:
1.变量oldext和newext分别指定旧的扩展名和新的扩展名。dir指定文件所在目录;
2."ls $dir | grep .$oldext"用来在指定目录dir中获取扩展名为旧扩展名的所有文件;
3.在循环体内先利用cut命令将文件名中"."之前的字符串剪切出来,并赋值给name变量;接着将当前的文件名重命名为新的文件名。

通过这个脚本,所有照片的扩展名都成功修改。为了使这个脚本更具有通用型,我们可以增加几条read命令实现脚本和用户之间的交互。改进版的脚本如下:

代码如下:

#!/bin/bash
read -p "old extension:" oldext
read -p "new extension:" newext
read -p "The directory:" dir
cd $dir

for file in $(ls $dir | grep .$oldext)
do
name=$(ls $file | cut -d. -f1)
mv $file ${name}.$newext
echo "$name.$oldext ====> $name.$newext"
done

echo "all files has been modified."

附:另一个版本

代码如下:


#!/bin/sh
# file name : rename_suffix.sh
# author: zhouhh
# Email: ablozhou@gmail.com
# Date : 2008.4.1

echo "input what suffix will be replaced :"
read SUFFIX_SRC
echo "input what suffix of file to rename to:"
read SUFFIX_DST


for i in *.$SUFFIX_SRC
do
if [ -e $i ]; then
echo "mv $i to `basename $i .$SUFFIX_SRC`.$SUFFIX_DST"
mv $i `basename $i .$SUFFIX_SRC`.$SUFFIX_DST
else
echo "file does not exist."
exit -1
fi

done

"如何编写Shell脚本批量修改文件后缀名代码"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

文件 脚本 代码 扩展名 文件名 后缀 内容 变量 命令 更多 目录 知识 实用 成功 学有所成 接下来 之间 名都 困境 字符 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 三星服务器黑屏 上海沪酥网络技术有限公司 安全数据库服务 人大金仓数据库怎么备份 概括软件开发流程 国家网络安全保卫部门负责 低空飞行服务器 数据库名帐套名 顺义区正规软件开发范围 php数据库操作类及应用 出生日期易患疾病数据库 吉林无纸化会议系统软件开发 文件服务器硬件配置 南京高性能服务器高性价比 怎么浏览云服务器的图片 数据库查询第二limit 杭州百闻网络技术有限公司干嘛的 嘉定区通用软件开发厂家直销 管家婆连接数据库错误 曲周一站式万词霸屏需要服务器吗 如何找回丢失的数据库数据 软件开发企业的存货 现代数据库技术相关论文 智慧城市软件开发项目 军人如何防范网络安全信息泄露 梦幻西游手游其他服务器怎么删除 工业网络技术有用吗 软件开发交接协议 成都web前端软件开发哪里好 软件和互联网都属于科技股吗
0