Linux 批量整理(重命名)文件

作者 : 小姬推荐 发布时间: 2019-11-18 文章热度:351 共1876个字,阅读需5分钟。 本文内容有更新 字体:
  • 文章介绍
  • 目 录

    用法:
    rnall.sh [文件名后缀] [文件名头部(可选)]

    注意:
    假如文件有8个,则格式为[08],第一个为[01];
    假如文件有88个,则格式为[88],第一个为[01];
    假如文件有888个,则格式为[888],第一个为[001];
    假如文件有8888个,则格式为[8888],第一个为[0001];
    最大支持9999个文件重名命,如果需要更多,自己改吧。

    用法:

    1
    rnall.sh -t [文件名后缀,文件名后缀] -h [文件名头部(可选)] -r [递归模式] -s [显示错误信息]

    示例:

    将该目录下所有的以jpg和png为后缀的文件,重新排序;

    并添加  MoeClub.org   为前缀.

    1
    rnall -t jpg,png -h MoeClub.org

    提示:

    复制到 /usr/local/bin 文件夹中,命名为rnall,并赋予a+x权限;

    就可直接调用此命令,方便使用。

    你可以参考使用这个命令:

    1
    chmod a+x /usr/local/bin/rnall

    下载地址:

    1
    wget --no-check-certificate -qO /usr/local/bin/rnall 'https://moeclub.org/attachment/LinuxShell/rnall.sh' && chmod a+x /usr/local/bin/rnall

    具体用法请查看这篇文章:

    https://moeclub.org/2017/03/24/80/

    附上完整代码:

    #rnall.sh

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25
    #!/bin/bash

    Type="$1";

    Head="${2:-}";

    ls -1 *.$Type >/dev/null 2>&1

    [ $? -ne '0' ] && echo "Not found *.$Type in this directory! " && exit 1

    Num="$(ls -1 *.$Type |wc -l)"

    [ $Num -lt '100' ] && NUM=2;

    [ $Num -ge '100' ] && [ $Num -lt '1000' ] && NUM=3;

    [ $Num -ge '1000' ] && [ $Num -lt '10000' ] && NUM=4;

    [ -n "$Head" ] && Head="$Head-"

    i=1

    for var in `ls -1 *.$Type`

     do

      [ -z "$NUM" ] && echo "Error ! "&& break;

      [ $NUM -eq '2' ] && [ $i -lt '10' ] && mv -f "$var" "$Head[0$i].$Type";

      [ $NUM -eq '2' ] && [ $i -ge '10' ] && mv -f "$var" "$Head[$i].$Type";

      [ $NUM -eq '3' ] && [ $i -lt '10' ] && mv -f "$var" "$Head[00$i].$Type";

      [ $NUM -eq '3' ] && [ $i -ge '10' ] && [ $i -lt '100' ] && mv -f "$var" "$Head[0$i].$Type";

      [ $NUM -eq '3' ] && [ $i -ge '100' ] && [ $i -lt '1000' ] && mv -f "$var" "$Head[$i].$Type";

      [ $NUM -eq '4' ] && [ $i -lt '10' ] && mv -f "$var" "$Head[000$i].$Type";

      [ $NUM -eq '4' ] && [ $i -ge '10' ] && [ $i -lt '100' ] && mv -f "$var" "$Head[00$i].$Type";

      [ $NUM -eq '4' ] && [ $i -ge '100' ] && [ $i -lt '1000' ] && mv -f "$var" "$Head[0$i].$Type";

      [ $NUM -eq '4' ] && [ $i -ge '1000' ] && [ $i -lt '10000' ] && mv -f "$var" "$Head[$i].$Type";

      [ -n "$NUM" ] && i=$[$i+1];

    done

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,请不要用于商业用途!
    3. 如果你也有好源码或者教程,可以到审核区发布,分享有J币奖励和额外收入!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如遇到加密压缩包,默认解压密码为"www.gaoanj.cn",如遇到无法解压的请联系管理员!

    高岸姬 » Linux 批量整理(重命名)文件
    4
    +860天安全运行
    高岸姬专注高端网站建设
    6
    +6篇本周更新
    我更新我快乐

    VIP免费下载全站资源

    立即了解