linux 文件名批量修改,全部加上某个数,怎么弄?

发布网友 发布时间:2022-04-23 13:25

我来回答

3个回答

热心网友 时间:2023-10-15 14:31

写个脚本 逐个修改即可

#!/bin/bash

for file in $(ls *.jpg)
do
    filename=${file%.jpg}
    count=$(echo $filename | wc -c )
    if [ $count -gt 2 ]; then
        mv $file "2${filename}.jpg"
    else
        mv $file "20${filename}.jpg"
    fi
done

热心网友 时间:2023-10-15 14:32

1、例如想改为数字为文件名001.jpg--999.jpg
#!/bin/sh

max=`find . -type f -name '*jpg'|wc|awk '{print $1}'`
x=(`seq -f %03g 1 ${max}`)
i=0
for file in `find . -type f -name '*.jpg'`;do
mv $file ${x[$i]}.jpg
((i=i+1))
done
2、为了将两位数字首位数字改为2
seq -f 2%02g 1 99
3、为了让1-9排到前面,你最好先mv 1.jpg 01.jpg

热心网友 时间:2023-10-15 14:32

网上有好多文件批量重命名的软件,下一个就可以。

热心网友 时间:2023-10-15 14:31

写个脚本 逐个修改即可

#!/bin/bash

for file in $(ls *.jpg)
do
    filename=${file%.jpg}
    count=$(echo $filename | wc -c )
    if [ $count -gt 2 ]; then
        mv $file "2${filename}.jpg"
    else
        mv $file "20${filename}.jpg"
    fi
done

热心网友 时间:2023-10-15 14:32

1、例如想改为数字为文件名001.jpg--999.jpg
#!/bin/sh

max=`find . -type f -name '*jpg'|wc|awk '{print $1}'`
x=(`seq -f %03g 1 ${max}`)
i=0
for file in `find . -type f -name '*.jpg'`;do
mv $file ${x[$i]}.jpg
((i=i+1))
done
2、为了将两位数字首位数字改为2
seq -f 2%02g 1 99
3、为了让1-9排到前面,你最好先mv 1.jpg 01.jpg

热心网友 时间:2023-10-15 14:32

网上有好多文件批量重命名的软件,下一个就可以。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com