代码这种经常完善的东西,其实是不太适合使用博客来发布的。

以下是一个批量修改照片名称的shell脚本:

事情是这样的,虽然手机拍的照片文件名是按照日期来确定的,但是是这种形式的 IMG_mmddYY_HHiiss.jpg。(字母的含义借助了php的表示法)

脚本的目的是将其修改成这种形式: IMG_YYmmdd_HHiiss.jpg

#!/system/bin/sh
#
#This shell to rename a or some jpg files
#some jpg file name are like this : IMG_200315_135037.jpg
#when we sort them,the sort are not arange by date
#so this shell will change its name to IMG_20150320_135037.jpg
#
# Usage: jpgrename dirname
# preYear=
maxdepth= alias find='busybox find'
alias cut='busybox cut' if [ -d $ ]; then
filenames=`find $ -maxdepth $maxdepth -name "IMG_??????_??????.jpg" -print`
elif [ -f $ ]; then
if [ `echo $ | cut -c ` != '/' ]; then
filenames=./$
fi
else
echo "No such file or directory: $1"
fi
#echo $filenames
count=
#filearr=$(echo $filenames)
for item in $filenames
do
oldFileName=$item
item1=${item%/*}
item=${item#$item1}
item2=`echo $item | cut -c 1-5`
item3=`echo $item | cut -c 6-7`
item4=`echo $item | cut -c 8-9`
item5=`echo $item | cut -c 10-11`
item6=`echo $item | cut -c 12-`
newFileName=$item1$item2$preYear$item5$item4$item3$item6
mv $oldFileName $newFileName
#echo $oldFileName-$newFileName
#echo ll
let count++
done
echo Total rename $count files

批量修改照片名称的shell脚本的更多相关文章

  1. ArcGIS 批量修改数据名称-arcgis案例实习教程

    ArcGIS 批量修改数据名称-arcgis案例实习教程 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 功能:批量修改数据/文件名称 使用方法: 输入:文件夹(或者 ...

  2. LINQPad_批量修改图片名称

    用到这个工具是在后台批量修改图片名称的时候 下载并安装LINQPad. 这里要注意:在复制path路径的时候C:\xampp\htdocs\day01\angularjs_day01_am\angul ...

  3. node批量修改文件名称

    let fs = require('fs');//引用文件系统模块 let PATH = `./app_zijietiaodong/`;//当前文件夹 let ext = { readFileList ...

  4. 【Python】简单的脚本,轻松批量修改文件名称

    使用python脚本,批量修改文件夹名称 先创建一些没用的案例文件 import os #创建新文件夹 dir = os.makedirs('D:\\SomeThing\\testfile') #将文 ...

  5. MATLAB批量修改图片名称

    申明:转载请注明出处. 设在“D:\UserDesktop\pic\”目录下有很多张格式为jpg照片,命名不规则,如图. 现在用MATLAB批量修改所有图片的命名格式,改为1.jpg,2.jpg,.. ...

  6. 批量复制及执行命令shell脚本

    平时在处理一个或几个机器运行环境时,一个机器一个机器处理也能接受,但是如果是一批机器,几十或几百台,要是一台一台去安装环境,光是输入同一的命令,估计你自己都想吐,所有聪明的人会想一些偷懒的办法,确实可 ...

  7. Java实现批量修改文件名称

    import java.io.File; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; /** ...

  8. 如何批量修改图片名称(win下)

    深度学习目标检测任务中常常需要大量的图片,这些图片一般来自网络爬虫或是自行批量下载,但下载下的图片常常在保存时被命名为长段英文数字混写,因此规律化命名下载的图片数据名称就显得尤为重要了,下面我演示在本 ...

  9. php实现批量修改文件名称

    场景叙述:比如我要将D:\WWW\img\Gastroenterology这个文件夹下图片要重新命名成1.jpg,2.jpg.......这样的有规律名字, 如下图: 那么我们就可以利用php的ren ...

随机推荐

  1. 实验一补充内容 Java开发环境的熟悉-刘蔚然

    本次实验 PSP时间统计 步骤 耗时百分比 需求分析 5% 设计 10% 代码实现 67% 测试 15% 分析总结 3%

  2. [LeetCode]题解(python):074-Search a 2D Matrix

    题目来源 https://leetcode.com/problems/search-a-2d-matrix/ Write an efficient algorithm that searches fo ...

  3. Java学习-027-JSON 之一 -- 初识

    通常,我们在生活中使用的应用产品(无论是 Web应用还是 App 应用),又或者我们平常的信息交流,均无可避免的存在着信息交互,在信息交互的过程中就有着信息载体的存在.那么,在我们熟知的网络应用产品中 ...

  4. c#中DropDownList控件绑定枚举数据

    c# asp.net 中DropDownList控件绑定枚举数据 1.枚举(enum)代码: private enum heros { 德玛 = , 皇子 = , 大头 = , 剑圣 = , } 如果 ...

  5. http://www.cnblogs.com/zhaoyang/archive/2012/01/07/2315436.html

    http://www.cnblogs.com/zhaoyang/archive/2012/01/07/2315436.html

  6. iOS 获取UUID

    -(NSString*)GetUUID { CFUUIDRef puuid = CFUUIDCreate( nil ); CFStringRef uuidString = CFUUIDCreateSt ...

  7. iOS: 实现微信支付

    一.介绍: 现在的消费越来越方便,直接带个手机用各种三方的支付平台进行支付就行,例如微信.支付宝.现在正好我所做的项目中用到了微信支付,今天就来整理一下. 二.准备: 1.去微信官方开发者平台注册开发 ...

  8. APICloud云修复再升级 增加热重启APP功能

    移动应用开发平台APICloud的亮点功能云修复在本月迎来升级版,云修复是APICloud的优势功能之一,通过APICloud平台开发的APP或者嵌入SuperWebView SDK的原生APP在发布 ...

  9. 禁用LMHOSTS和NetBIOS后提升上网速度 ?

    LMHOSTS 文件是 windows 中进行 netbios 静态解析时使用的,其作用类型于 HOSTS 文件. 今天发现这个东西有点问题,在用ADSL上网时,明明 IP . DNS 都设置得好好的 ...

  10. axis2_1.6.2之构建web端和客户端 .

    参考资料: http://blog.csdn.net/apei830/article/details/5448897 axis2的官网 http://axis.apache.org/axis2/jav ...