代码之家  ›  专栏  ›  技术社区  ›  steven

将文件名转换为整数

  •  0
  • steven  · 技术社区  · 16 年前

    所以我有:

    01.jpg

    1.jpg 3.jpg 4.jpg 5.jpg

    3 回复  |  直到 16 年前
        1
  •  2
  •   user181548 user181548    16 年前

    如果你有命令 rename 在您的系统上,

    rename "s/0(\\d+\\.jpg)/\$1/" *.jpg
    
        2
  •  1
  •   soulmerge    16 年前
    for i in 0*.jpg; do
        mv $i ${i:1}
    done
    
        3
  •  1
  •   paxdiablo    16 年前

    移除 任何 从一开始就有零的数量,以防止冲突:

    for old in 0*.jpg; do
        new=$(echo ${old} | sed 's/^00*//')
        if [[ ! -f ${new} ]] ;then
            mv ${old} ${new}
        else
            echo "${old} conflicts with ${new}"
        fi
    done
    

    当然, rename 如果可用,这是一个更好的选择。我只是为了完整起见,在没有该工具的UNIX机器上运行时,才包含此内容。