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

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

大家好,我是良许。

在 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

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

微信图片_20220419160544.gif

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

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

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


 其它高效重命名方法  


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

方法一:使用 mv 命令

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

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

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

# mv file{1,2}.txt

运行的结果如下:

微信图片_20220419160547.jpg

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

# cp file{1,2}.txt

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

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

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

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

直接上动图:

微信图片_20220419160550.gif

目录
相关文章
|
Apache 流计算 OceanBase
手把手教你实现 OceanBase 数据到阿里云数据库 SelectDB 内核版 Apache Doris 的便捷迁移|实用指南
本文介绍了如何将数据从 OceanBase 迁移到阿里云数据库 SelectDB 内核版 Apache Doris。提供 3 种数据同步方法 1. 使用 DataX,下载 DataX 并编写配置文件,通过 OceanBaseReader 和 DorisWriter 进行数据迁移。 2. 利用 Apache Doris 的 Catalog功 能,将 OceanBase 表映射到 Doris 并插入数据。 3. 通过Flink CDC,设置 OceanBase 环境,配置 Flink 连接器,实现实时数据同步。
2045 0
手把手教你实现 OceanBase 数据到阿里云数据库 SelectDB 内核版 Apache Doris 的便捷迁移|实用指南
|
Unix Linux vr&ar
【详解】静态库和动态库的认识和使用【Linux】
【详解】静态库和动态库的认识和使用【Linux】
295 0
EMQ
|
运维 Linux 网络性能优化
MQTT 5.0 报文解析 05:DISCONNECT
在 MQTT 中,客户端和服务端可以在断开网络连接前向对端发送一个 DISCONNECT 报文,来指示连接关闭的原因。客户端发送的 DISCONNECT 报文还可以影响服务端在连接断开后的行为,例如是否发送遗嘱消息,是否更新会话过期间隔。
EMQ
491 0
MQTT 5.0 报文解析 05:DISCONNECT
|
8月前
|
供应链 搜索推荐 API
深度解析1688 API对电商的影响与实战应用
在全球电子商务迅猛发展的背景下,1688作为知名的B2B电商平台,为中小企业提供商品批发、分销、供应链管理等一站式服务,并通过开放的API接口,为开发者和电商企业提供数据资源和功能支持。本文将深入解析1688 API的功能(如商品搜索、详情、订单管理等)、应用场景(如商品展示、搜索优化、交易管理和用户行为分析)、收益分析(如流量增长、销售提升、库存优化和成本降低)及实际案例,帮助电商从业者提升运营效率和商业收益。
426 20
|
数据库 关系型数据库 MySQL
数据传输服务是什么?
【6月更文挑战第3天】数据传输服务是什么?
337 2
|
存储 计算机视觉
通过视频帧提取及批量取模转换实现基于STC32的点阵LED动画播放
【8月更文挑战第25天】该方案概述了如何通过视频帧提取与批量取模转换技术,在STC32微控制器上实现点阵LED动画播放。步骤分为:1) 视频帧提取:选用合适的视频处理库(如OpenCV)或专用工具,将视频按指定帧率逐帧转存为图片;2) 批量取模转换:利用自定义或第三方工具将图片转换成适用于点阵LED显示的格式;3) 在STC32上实现动画播放:完成硬件连接后,通过SPI/I2C等接口从存储器读取取模数据,并设计定时器中断等机制控制帧切换,最终呈现流畅动画效果。此外,还需进行必要的优化和调试以改善显示质量。
234 0
|
iOS开发 测试技术 MacOS
Appium-处理系统弹窗
前言: 最近在搞appium自动化,iOS的系统弹窗是大家都会遇到的,本文来总结处理这种弹窗的用法。 环境: MacOS:10.13.4 Appium-desktop:1.6.1 Xcode:9.3.1 一、使用switch_to.alert处理弹窗 #所有弹窗默认允许 self.driver.switch_to.alert.accept() 首先推荐这种方式,几乎不会失败。
3158 0
|
安全 网络安全 网络虚拟化
企业路由器配置PPTP PC到站点模式VPN指南(外网访问内网资源)
企业路由器配置PPTP PC到站点模式VPN指南(外网访问内网资源)
550 0
|
移动开发 JavaScript
h5 实现调用系统拍照或者选择照片并预览
调用手机相机拍照或者是调用手机相册选择照片,这个功能在 手机端页面 或者 webApp 应该是常用到的,就拿个人或会员资料录入那块来说就已经是经常会碰到的, 每当看到这块功能的时候,前端的小伙伴就得去找各种各样的插件。
3144 0