rename:重命名文件,

我下面的操作是在ubuntu16.04发行版 演示的,centos下面的语法有些不同

1,首先,生成1到100命名的.html后缀的文件

ghostwu@dev:~/linux/rename$ ls
ghostwu@dev:~/linux/rename$ touch {..}.html
ghostwu@dev:~/linux/rename$ ls
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html

2,通过rename+正则表达式,把.html后缀去掉

ghostwu@dev:~/linux/rename$ rename 's/\.html//' *.html
ghostwu@dev:~/linux/rename$ ls

s:表示替换,  //两个斜杠中没有内容,表示.html 替换为空

3,在文件末尾添加.html后缀

ghostwu@dev:~/linux/rename$ ls

ghostwu@dev:~/linux/rename$ rename 's/$/\.html/' *
ghostwu@dev:~/linux/rename$ ls
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html

4,把.html后缀替换为.htm

ghostwu@dev:~/linux/rename$ rename 's/\.html/\.htm/' *
ghostwu@dev:~/linux/rename$ ls
.htm .htm .htm .htm .htm .htm .htm .htm .htm .htm
...

5,basename,返回路径中的文件名部分

ghostwu@dev:~$ basename ./linux/rename/.htm
.htm

6,basename, 返回路径中的文件名,不包括后缀

ghostwu@dev:~$ basename ./linux/rename/.htm .htm

7,dirname,返回文件的路径部分

ghostwu@dev:~$ dirname ./linux/rename/.htm
./linux/rename

Linux常用基本命令(rename,basename,dirname)的更多相关文章

  1. Linux常用基本命令(less)

    转: Linux常用基本命令(less) LESS:跟more命令的功能类似,都是用于分页显示内容,但是他的性能比more更高,功能比more更丰富,他读取文件是按需加载 格式: less [opti ...

  2. Linux 常用基本命令及应用技巧

    需要pdf 版 联系我 我的文件中有目录一.Linux 的常用基本命令................................................................. ...

  3. linux学习笔记之 basename, dirname

    前言: basename: 用于打印目录或者文件的基本名称 dirname: 去除文件名中的非目录部分,仅显示与目录有关的内容.dirname命令读取指定路径名保留最后一个/及其后面的字符,删除其他部 ...

  4. 【Linux】linux常用基本命令(转)

    (转自:http://blog.csdn.net/xiaoguaihai/article/details/8705992) Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用 ...

  5. 【Linux】linux常用基本命令

    Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们.   这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到版权问题. 1.显示日 ...

  6. Linux常用基本命令(file,chown)

    1,file命令作用,查看文件的类型 ghostwu@dev:~$ .htm ./linux/rename ghostwu@dev:~$ .htm ./linux/rename/.htm: empty ...

  7. linux常用基本命令

    Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们.   系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器 ...

  8. linux常用基本命令整理小结

    linux系统遵循的基本原则 由目标单一的小程序组成,组合小程序完成复杂任务: 一切皆文件: 尽量避免捕捉用户接口: 配置文件保存为纯文本文件: Linux命令行常识 命令格式 命令+选项+参数 选项 ...

  9. Linux常用基本命令(chmod)

    chmod命令用来改变文件或者目录的权限,只有文件的属主和超级用户才能够执行这个命令 格式: chmod [option] [mode] [file] >常用参数选项 -R : 递归修改目录以及 ...

随机推荐

  1. PHP中eval函数的危害与正确禁用方法

    其实 eval()是无法用php.ini中的 disable_functions禁止掉的 :eval是zend的,因此不是PHP_FUNCTION 函数: 如果想禁掉eval可以用php的扩展 Suh ...

  2. iOS-iOS9系统SEGV_ACCERR问题处理【v3.6.3的一些bug修复】

    前言 最近APP不断地更新版本,却发现一些未知的错误导致崩溃,我把能测出来的错误,全部修复了,因为项目里集成了腾讯Bugly,看了下后台的崩溃,依旧千篇一律啊,然后就纠结了,很多SEGV_ACCERR ...

  3. 用开源 ASP.NET MVC 程序 Bonobo Git Server 搭建 Git 服务器(转)

    用开源 ASP.NET MVC 程序 Bonobo Git Server 搭建 Git 服务器   现在不用Git,都不好意思说自己是程序员. 当你想用Git,而源代码服务器是Windows系统时,你 ...

  4. VM虚拟机-Ubuntu server- 桥接模式网络配置

    问题描述: 在Ubuntu虚拟机安装完毕之后,网络连接采用桥接模式,对虚拟机的eth0网卡进行静态IP设置,参数配置没有问题,但网络一直没有连接成功:即:无法实现本地主机连通虚拟机(ping不通该虚拟 ...

  5. Elasticsearch使用filter进行匹配关系and,or,not,range查询

    RESTful接口URL的格式: http://localhost:9200/<index>/<type>/[<id>] 其中index.type是必须提供的. i ...

  6. c++的动态绑定和静态绑定

    为了支持c++的多态性,才用了动态绑定和静态绑定. 1.对象的静态类型:对象在声明时采用的类型.是在编译期确定的. 2.对象的动态类型:目前所指对象的声明.在运行期决定.对象的动态类型可以更改,但是静 ...

  7. 推荐一个 MYSQL 的命令行的客户端 MYCLI

    MYCLI 是一个 MySQL 命令行客户端工具 , 可以实现自动补全(auto-completion)和语法高亮,平时测试环境维护一些数据还是蛮方便的. https://github.com/dbc ...

  8. NodeJS开发环境配置

    "Node.js 是服务器端的 JavaScript 运行环境,它具有无阻塞(non-blocking)和事件驱动(event-driven)等的 特色,Node.js 采用 V8 引擎,同 ...

  9. redis集群报Jedis does not support password protected Redis Cluster configurations异常解决办法

    解决spring-data-redis操作redis集群报“Jedis does not support password protected Redis Cluster configurations ...

  10. tensorflow 在同一个GPU同时加载多张相同的图

    saver = self.tf_instance.train.Saver() self.sess = self.tf_instance.Session(config=sess_config, grap ...