上海长宁网站建设营销新闻
每日分享三个Linux命令,悄悄培养读者的Linux技能。
rename
作用
批量修改文件名称
rename命令能够基于正则表达式对文件名进行批量修改
语法
rename [option] expression replacement file
expression:文件命中需要替换的字符串
replacement:将文件名中指定原字符串替换为目标字符串
file: 指定要改变文件名的文件列表
参数:
- -f:强制修改文件名称
- -n:模拟运行,实际命令没进行重命名
- -v:输出命令执行详细信息
通配符:
- ?:可替代单个字符
- *:可替代多个字符
- .:匹配除换行字符以外的任意字符
- +:匹配一个字符一次或者多次
案例
- 将txt替换为doc
rename txt doc test.txt
- 将test改成test0,然后将test0改成test00
创建文件
touch test{1..5}
rename test test0 test?
rename test0 test00 test*
basename
作用
从文件路径中提取文件名
语法
basename OPTION NAME
参数:
- -a:处理多个文件
- -s删除指定后缀
案例
- 提取文件名
basename /home/test/dir
basename /home/test/dir/
注:提取文件名会删除后面的“/”。
- 提取多个文件名
basename -a /home/test /home/test/dir
- 删除指定后缀
basename /home/test.txt .txt
basename -s .txt /home/test.txt
两段命令功能相同。
dirname
作用
去除文件名的非目录部分
语法
dirname [OPITION] NAME
案例
- 提取文件路径
dirname /home/test/file.txt
- 提取目录的路径
dirname /home/test/file/
参考
[1] 解锁Linux之谜:自由、安全、强大的操作系统
[2] Linux每日智囊-“man,cd,pwd”
[3] Linux每日智囊-“info,tree,stat”
[4] Linux每日智囊-“whatis,touch,which”
[5] Linux每日智囊-“mkdir,rmdir,rm”
[6] Linux每日智囊-“ls,wc,nl”
[7] Linux每日智囊-“mv,cp,md5sum”