zoukankan      html  css  js  c++  java
  • ubuntu16.04(其他版本也可)批量修改图片名---shell编程

      在windows系统中有很多好用的图片排序软件,可以批量的进行图片排序。然而在ubuntu中,图片排序只能自己写一个shell脚本,编写shell代码。下面是具体的操作步骤。
    (1)、新建一个rename.sh文件(这个名字可以随便起但是后缀必须是.sh,而且一般放在与图片集所在的目录下),之后在文件的内部写入如下代码(代码中已经标注每条代码的含义):

    #!test-folder/bash  告诉这个文件是shell脚本
    #mkdir images(你可以像这样的建立一个文件夹 之后用cp指令将修改后的图片放到这个文件夹中)     
    #输出本文件的说明                
    echo "this script is to rename picture"                         
                                                              
    #设置图片开始的顺序变量 (我想让图片的名字从70884开始排序)                                 
    i=70884 
    #names是一个准备更改的图片集的索引(可以设置成任意值),./name49/* 表示names49文件夹下的所有图片(可以改为自己的图片集的位置)  
    for names in ./names49/* 
    do 
    #输出图片名字names是一个变量 $names 表示引用这个变量的内容
      echo $names 
    #变量赋值,news是一个新的变量                            
      news=$i 
      echo "$news" 
    #更改(如果将mv 变为cp的话就是将更名字后的图片复制到指定的目录下)当前的图片 到指定的目录下,并且命名为自己想要的名字$news.jpg 
      mv $names ./names49/$news.jpg 
      let i=i+1 
     done 

    (2)、整体代码以及执行命令如下(方便查看对照更改):
    整体代码:

    #!test-folder/bash           
        echo "this script is to rename picture"  
        i=70884 
        for names in ./names49/* 
        do 
          echo $names                            
          news=$i 
          echo "$news" 
          mv $names ./names49/$news.jpg 
          let i=i+1 
         done 

    在当前目录中打开终端,执行命令:

    sudo sh ./rename.sh

    注意:在运行该脚本时可能会提示 let:not found 因为上面代码中出现了let这个指令。而sh指令默认是dash 而dash不支持let命令,所以要显示的用bash 这个命令
    更改为:

    sudo bash rename.sh

    如果仍然想要用sudo sh ./rename.sh 那么必须要修改/bin/sh 指向bash.可以执行下面的命令:

    sudo dpkg-reconfigure dash 

    会出现一个对话框:

    从图片上的文字可以看出,使用dash可以整体提升系统的性能,所以最好不修改。如果你修改后,当然也可以用与上面同样的命令修改回来。(对于部分关键字如 let,bash支持,而sh和dash并不支持,对于部分关键字则选择使用bash。)

  • 相关阅读:
    React.js学习笔记之事件系统
    彻底解决Webpack打包慢的问题:npm run build:dll
    gulp详细入门教程
    cmd、node、npm 常用命令
    ant design中ES6写法个人总结
    自定义浏览器滚动条的样式,打造属于你的滚动条风格
    js相关知识
    day31-python阶段性复习五
    day30-python阶段性复习四
    day29-python阶段性复习三
  • 原文地址:https://www.cnblogs.com/newneul/p/8360974.html
Copyright © 2011-2022 走看看