linux - 如何在终端(LINUX)中重命名多个文件?

标签 linux file terminal pattern-matching rename

我在一个目录中有一堆名称中根本没有模式的文件。我只知道它们都是 Jpg 文件。我如何重命名它们,以便它们的名称中有某种顺序。

我知道在 Windows 中,您所做的就是选择所有文件并将它们全部重命名为相同的名称,Windows 操作系统会自动添加序列号以补偿相同的文件名。

我希望能够在 Linux Fedora 中执行此操作,但我只能在终端中执行此操作。请帮忙。我迷路了。

执行此操作的命令是什么?

最佳答案

执行此操作的最佳方法是在终端中运行一个循环,从一张图片到另一张图片,并使用每次循环都变大的数字重命名它们。

你可以这样做:

n=1
for i in *.jpg; do
    p=$(printf "%04d.jpg" ${n})
    mv ${i} ${p}
    let n=n+1
done

只需将其逐行输入到终端即可。

如果你想在数字前面放一个自定义的名字,你可以把它放在第三行的百分号之前。

如果要更改姓名编号中的位数,只需替换第三行中的“4”即可(但不要更改“0”)。

关于linux - 如何在终端(LINUX)中重命名多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21541009/

相关文章:

c - gdb 在 Centos 上找不到调试信息

javascript - 是否可以通过Python将JavaScript代码放入JS文件中?

c - 在 C 中使用文件中的库存数据时,数据打印不正确

linux - 如何从守护进程发送 KDE 中的桌面通知

Linux wget 文件输出

linux - ioread32 后跟 iowrite32 没有给出相同的值

file - unison 如何决定同步文件的方式

python - 发送远程 shell 命令并检索其输出

c - 是否可以在linux终端以非阻塞方式实现printf()

python - 如何在终端中制作 Python 脚本 "tab-complete"目录?