本简要指南介绍了如何在 Linux 操作系统中重命名文件而无需输入两次全名。 众所周知,我们使用 mv
在 Linux 中重命名文件的命令。 要重命名文件,命令将是:
$ mv <old_file_name> <new_file_name>
让我给你看一个 example.
$ touch ostechnix1.txt
$ mv ostechnix1.txt ostechnix2.txt
这就是我们重命名文件的方式 mv
Linux 中的命令。 上面的命令将重命名文件名为 "ostechnix1.txt"
到 "ostechnix2.txt"
. 如您所见,我们在上述命令中输入了两次文件名。 但是,这不是必需的。 借助简单的 BASH 函数,我们可以在 Linux 中使用 mv 命令轻松重命名文件,而无需输入两次文件名。
在 Linux 中重命名文件而不输入全名两次
编辑您的 ~/.bashrc
用你最喜欢的编辑器归档:
$ nano ~/.bashrc
在末尾添加以下行:
# Bash Function To Rename Files Without Typing Full Name Twice function mv() { if [ "$#" -ne 1 ] || [ ! -e "$1" ]; then command mv "[email protected]" return fi read -ei "$1" newfilename command mv -v -- "$1" "$newfilename" }
在这里, bash 函数名称是 mv。 您可以根据自己的喜好选择任何其他不同的名称。 Save 和 close 文件。 然后运行以下命令使更改生效:
$ source ~/.bashrc
从现在开始,您只能指定原始文件名并重命名文件,如下所示。
$ mv ostechnix1.txt
这将在终端中显示文件名。 编辑文件名并按 ENTER 键重命名它。 看看下面的视觉演示。

正如你在上面的输出中看到的,我已经重命名了文件 ostechnix1.txt
到 ostechnix2.doc
. 很方便,对吧?
使用箭头键移动字母或按退格键删除所有字母并键入文件的新名称。 不仅是文件名,您还可以重命名文件扩展名。 这就像按 F2 键并在 GUI 中重命名文件一样。
无需两次输入全名即可重命名文件的其他方法
还有一些其他方法可以重命名文件,而无需输入两次全名。
方法 1 – 使用 mv 命令
除了 BASH 函数方法,这里还有另一种简单的方法重命名文件 mv
命令。 我们甚至不需要 BASH 函数。 使用以下单行命令快速重命名文件:
$ mv ostechnix{1,2}.txt
上面的命令将复制名为 ostechnix1.txt
到 ostechnix2.txt
.
这是另一个 example. 以下命令会将“IMG_20140210_150415974.jpg”重命名为“IMG_20140210_ostechnix.jpg”。
$ mv IMG_20140210_{150415974,ostechnix}.jpg
如果您不想重命名,但想拥有同一个文件的两个副本,请使用 cp
命令如下:
$ cp ostechnix{1,2}.txt
上述命令会将 ostechnix1.txt 的内容复制到 ostechnix2.txt。 您现在应该有两个内容相同的文件。
方法 2 – 使用 readline 键绑定(CTRL+w、CTRL+y 和 CTRL+y)
我们可以用 阅读线 快速重命名文件的键绑定。 默认情况下,这些键绑定与主流 shell 一起提供。 这 CTRL+w
command 将从命令中删除最后一个单词,并且 CTRL+y
键将在终端中粘贴该单词。

正如您在上面的输出中看到的,
- 首先,我输入“
mv ostechnix1.txt
”。 - 其次,我按
CTRL+w
删掉最后一句话,即ostechnix1.txt
. - 第三,我按
CTRL+y
粘贴最后一个单词。 - 最后,我按下
CTRL+y
再次粘贴相同的单词,然后重命名。
方法 3 – 使用 renameutils 中的“imv”
这 重命名工具 是一组旨在更快、更轻松地批量重命名文件和目录的程序。 Renameutils 包含一个名为 "imv"
其中。 它允许您以交互方式重命名文件名。
要重命名文件,请执行以下操作:
$ imv ostechnix1.txt
这将在终端中显示上述文件名。 根据需要编辑文件名,然后按 ENTER 重命名它。 要了解其他重命名方法,请参阅以下指南。
- 如何在 Linux 中一次重命名多个文件
其他 Bash 提示:
- 如何在一个命令中使用 cd 和 ls
- 如何在一个命令中 cp 或 mv 和 cd
- 用于提取各种类型文件档案的 Bash 函数
希望这可以帮助。
资源: