linux中如何用rename命令重命名一个文件

是一个文件,不是批量
我把l.sh重命名为m.sh
用命令 rename l m m.sh
提示Bareword "l" not allowed while "strict subs" in use at (eval 1) line 1.
为什么?
最新回答
豆芽没营养

2024-04-26 12:39:55

用法如下:

$ rename [options] [perlexpr] [files]

PS:

(1)options

-v 显示成功重命名的文件-n 只显示将被重命名的文件,但是不进行重命名-f 如果文件已存在,覆盖-e 表明需要需要被执行的code,如果没有-e,那么第一个参数将被当成code。

(2)perlexpr

这是一个Perl表达式,文件名应当在其中被改变,没学过Perl也没关系,这个命令用到的语法很像sed,容易上手。

(3)files

需要重命名的文件。

扩展资料:

linux中如何用rename命令重命名一个文件示例:

1、去除文件扩展名

$ rename 's/\.bak$//' *.bak

2、去除文件名中的空格

$ rename 's/ //g' *

3、文件名转为小写

$ rename 'y/A-Z/a-z/' *

4、现在有一堆文件,他们的文件名模式是这样的第一部分-haha-第二部分.file ,现在要把中间的-haha- 删去并把第一部分的字符串和第二部分的字符串对调,可以这样:

$ rename 's/(.*)-haha-(.*)(.file)/$2$1$3/' *.file

等待__经年

2024-04-26 13:56:02

rename命令用字符串替换的方式批量改变文件名。

语法

rename(参数)

参数

原字符串:将文件名需要替换的字符串;
目标字符串:将文件名中含有的原字符替换成目标字符串;
文件:指定要改变文件名的文件列表。

实例

将test1.txt重命名为test.txt

rename test1.txt test.txt test1.txt

热带的企鹅

2024-04-26 00:45:52

rename的参数
rename命令的格式:
rename
[
-v
]
[
-n
]
[
-f
]
perlexpr
[
files
]
第一个参数:被替换掉的字符串
第二个参数:替换成的字符串
第三个参数:匹配要替换的文件模式
例子:rename
main1.c
main.c
main1.c
将main1.c重命名为main.c
rename支持通配符
?
可替代单个字符
*
可替代多个字符
[charset]
可替代charset集中的任意单个字符
关注《linux就该这么学》,小白轻松变大牛。
让月色乏味

2024-04-26 15:58:25

其实在文本模式中要重命名文件或目录的话是很简单的,只需要使用mv命令就可以了,比如将一个名为abc的文件重命名为123就可以这样来写:mv abc 123,

注意:如果当前目录下也有个123的文件的话,这个文件是会将它覆盖的!
紫烟轻娆

2024-04-26 05:55:04

用 mv 改名……
别被这个命令似乎是 move 的简写而被骗倒……