大家好,我是良许。

在 Linux 下,重命名一个文件,我们通常是使用 mv 命令,一般是这样操作的:

$ mv file1.txt file2.txt

这样重命令的方式当然是可以,但有个弊端就是你需要输入两次文件名。文件名比较短还好,一旦比较长的话,输两次会很让人崩溃的。

本文就介绍几种更高效的文件重命令方法,一般人不知道哦,知道的都是大神级别。

高效重命名文件的方法

首先,我们需要使用 vim 编辑 ~/.bashrc 文件。

$ vim ~/.bashrc

将下面这段代码添加到 ~/.bashrc 文件末尾:

# Bash Function To Rename Files Without Typing Full Name Twice
function mv() {
  if [ "$#" -ne 1 ] || [ ! -e "$1" ]; then
    command mv "$@"
    return
  fi

  read -ei "$1" newfilename
  command mv -v -- "$1" "$newfilename"
}

然后,再按 wq 保存并退出。再接下来,使用 source 命令让这个修改生效。

$ source ~/.bashrc

接下来,就是见证奇迹的时刻!

现在,我们要重命名 file1.txt 文件,我们只需这样操作即可:

$ mv file1.txt

然后,重命名的过程可以看下面这个动图:

由上面这个动图可以看出来,终端里会显示出来原来文件名称,然后你可以对这个名称直接进行更改,而无需再次输入一遍原来的名称,效率提高不止一点!

重命名成功后,终端也会这样提示:

‘file1.txt’ -> ‘file2.txt’

其它高效重命名方法

当然,除了修改 .bashrc 文件之外,还有很多高效重命名方法,这里再介绍两个。

方法一:使用 mv 命令

又回到了 mv 命令?打脸啦?

然鹅,命令是 mv ,但用法不一样!

很多情况下,我们只是修改文件名的某一个部分,比如说,将 file1.txt 修改为 file2.txt ,也就是把 1 改为 2 。在这种情况下,其实有个更高效的改法:

# mv file{1,2}.txt

运行的结果如下:

如果我们想保留原来的文件,再复制一个副本,那就只要将 mv 命令换成 cp 命令即可。

# cp file{1,2}.txt

这个结果应该是显而易见的,就不截图结果了。

方法二:使用快捷键(ctrl+w,ctrl+y)

既然大部分人是知道重命名文件需要输入两次文件名,那么我就满足你,依然输入两次文件名。但是,这里介绍一种更高效的重复输入文件名的方法。

在 Shell 里,我们可以使用 ctrl+w 来剪切最后的单词,使用 ctrl+y 来粘贴被剪切出来的内容。所以利用这个快捷键我们可以更高效重复输入文件名。

直接上动图:


最后,最近很多小伙伴找我要Linux学习路线图,于是我根据自己的经验,利用业余时间熬夜肝了一个月,整理了一份电子书。无论你是面试还是自我提升,相信都会对你有帮助!

免费送给大家,只求大家金指给我点个赞!

电子书 | Linux开发学习路线图

也希望有小伙伴能加入我,把这份电子书做得更完美!

有收获?希望老铁们来个三连击,给更多的人看到这篇文章

推荐阅读:


良许
1k 声望1.8k 粉丝