13

厉害了!知道这样重命名文件都是大神级别!

 4 years ago
source link: http://os.51cto.com/art/202006/618432.htm
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

大家好,我是良许。

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

$ mv file1.txt file2.txt 

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

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

JRBzimB.jpg!web

高效重命名文件的方法

首先,我们需要使用 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 

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

bErEjeE.jpg!web

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

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

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

其它高效重命名方法

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

(1) 方法一:使用 mv 命令

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

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

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

# mv file{1,2}.txt 

运行的结果如下:

56bb013270bcd2ee18854f6930e46909.jpg

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

# cp file{1,2}.txt 

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

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

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

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

直接上动图:

ueEFzym.gif

【责任编辑:赵宁宁 TEL:(010)68476606】


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK