精华内容
下载资源
问答
  • 2022-03-27 14:01:12

    linux下重命名文件有两种方式:

    1.较简单的处理命令:mv

    mv 原文件名 新文件名

    如:mv myFile newName

      将MyFile重命名为newName.
    

    2.linux提供了一个重命名文件命令:rename

    rename from to file1 file2 。。。

    如:rename myFile newName myFile.text

      将myFile.text重命名为newName.text
    

    这个命令在批量重命名是更好用

    如: rename myFile newName myFile.text myFile2.text myFile3.text

    这个命令将myFile.text myFile2.text myFile3.text文件名中myFile替换为newName

    转自:linux文件重命名命令

    更多相关内容
  • Linux命令中的rename命令主要用于给文件重命名,与mv命令有些类似,但rename可以对批量文件进行重命名,而mv命令则只能对单个文件重命名,下面就给大家详细介绍下Linux rename命令的使用方法吧。Linux的 rename 命令...

    Linux命令中的rename命令主要用于给文件重命名,与mv命令有些类似,但rename可以对批量文件进行重命名,而mv命令则只能对单个文件重命名,下面就给大家详细介绍下Linux rename命令的使用方法吧。

    c49dd1a814cc4a1dacc5283e7d615a08.png

    Linux的 rename 命令有两个版本,一个是C语言版本的,一个是Perl语言版本的,早期的Linux发行版基本上使用的是C语言版本的,现在已经很难见到C语言版本的了,由于历史原因,在Perl语言大红大紫的时候,Linux的工具开发者们信仰Perl能取代C,所以大部分工具原来是C版本的都被Perl改写了,因为Perl版本的支持正则处理,所以功能更加强大,已经不再需要C语言版本的了。

    如何区分系统里的rename命令是哪个版本的?

    输入 man rename 看到第一行是

    RENAME(1) Linux Programmer’s Manual RENAME(1)

    那么 这个就是C语言版本的。

    而如果出现的是:

    RENAME(1) Perl Programmers Reference Guide RENAME(1)

    这个就是Perl版本的了!

    两个版本的语法差异:

    C语言的,按照man上面的注解,

    rename的语法格式是:

    rename fromtofile

    这个命令有三个参数,分别是 from : 修改什么名字, to:改成什么名字, file 需要修改的文件是哪些。

    用法示例:

    比如,有一批文件,都是以 log开头的, log001.txt, log002.txt ……。 一直到 log100.txt

    现在想要把这批文件的log全部替换为 history

    rename log history log*

    这句命令的意思很明白了,把 以 log开头的所有文件中的 log字符替换为 history

    这样替换后的文件是: history001.txt, history002.txt …。。 一直到 history100.txt

    rename C语言版本的另一个man示例是把后缀名批量修改,

    比如我们要将所有 jpeg的后缀名图片文件修改为 jpg文件。

    rename .jpeg.jpg*.jpeg

    这样,所有以 .jpeg扩展的后缀名全部被修改为 .jpg

    现在总结一下rename C语言版本所能实现的功能: 批量修改文件名,结果是每个文件会被用相同的一个字符串替换掉!也就是说,无法实现诸如循环 然后按编号重命名!

    Perl 版本的批量重命名,带有Perl的好处是,你可以使用正则表达式来完成很奇特的功能。

    perl 版本的参数格式:

    rename perlexprfiles

    注意,perl版本的rename只有两个参数,第一个参数为perl正则表达式,第二个参数为所要处理的文件

    man rename的帮助示例:

    1) 有一批文件,以 .bak结尾,现在想把这些 .bak 统统去掉。

    rename ‘s/\.bak$//’ *.bak

    这个命令很简单,因为我还没有系统学习过perl,我不知道perl里替换字符串是不是这么干的,但sed是这么干的,所以如果你有sed或者tr基础,很容易明白,这个替换和sed里的正则语法是一模一样的。

    2) 把所有文件名内含有大小字母的,修改为小写字母。

    rename ‘y/A-Z/a-z/’ *

    依然和sed的替换语法一样,不用多解释,如果看不懂的话,可以系统学习一下sed先。

    还有几个比较实用的例子:

    批量去掉文件名里的空格

    Linux文件名本来是不支持空格的,不知道什么时候允许了,当然,在命令行调用文件的时候,空格是很有问题滴,比如你 原来可以直接 mv oldfile newfile 但有空格就不行了 , 得加双引号: mv “oldfile” “newfile” 或者用反斜杠转移 \[] ,这样还好,但如果你直接把含有空格的图片名引入 Latex文档,Latex生成pdf的时候会直接打印出文件名,之前这个问题苦恼了我很久,我生成的pdf怎么老是出现文件名呢?后来才发现原来是文件名内含有空格的问题!windows系统下生成的文件名是天生含有空格的,虽然很讨厌,但有些惠普扫描仪生成的图片默认就加入了空格,没有办法,只好去掉他,在系统研究rename命令前,我是用 mv 去除空格的。

    展开全文
  • linux 重命名文件命令

    千次阅读 2021-01-23 15:57:45
    mv 命令是一个与cp类似的命令,但是它并非创建文件或目录的复制品/副本。不管你在使用什么版本的Linux系统,mv 都默认安装在你的Linux系统上了。来看一下 mv 命令在日常操作中的一些例子。 [root@localhost tmp]# mv...

    mv 命令是一个与cp类似的命令,但是它并非创建文件或目录的复制品/副本。不管你在使用什么版本的Linux系统,mv 都默认安装在你的Linux系统上了。来看一下 mv 命令在日常操作中的一些例子。

    [root@localhost tmp]# mv --help Usage: mv [OPTION]... [-T] SOURCE DEST or: mv [OPTION]... SOURCE... DIRECTORY or: mv [OPTION]... -t DIRECTORY SOURCE... Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.

    Mandatory arguments to long options are mandatory for short options too. --backup[=CONTROL] make a backup of each existing destination file -b like --backup but does not accept an argument -f, --force do not prompt before overwriting -i, --interactive prompt before overwrite -n, --no-clobber do not overwrite an existing file If you specify more than one of -i, -f, -n, only the final one takes effect. --strip-trailing-slashes remove any trailing slashes from each SOURCE argument -S, --suffix=SUFFIX override the usual backup suffix -t, --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY -T, --no-target-directory treat DEST as a normal file -u, --update move only when the SOURCE file is newer than the destination file or when the destination file is missing -v, --verbose explain what is being done -Z, --context set SELinux security context of destination file to default type --help display this help and exit --version output version information and exit

    The backup suffix is '~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX. The version control method may be selected via the --backup option or through the VERSION_CONTROL environment variable. Here are the values:

    none, off never make backups (even if --backup is given) numbered, t make numbered backups existing, nil numbered if numbered backups exist, simple otherwise simple, never always make simple backups

    GNU coreutils online help: http://www.gnu.org/software/coreutils/ For complete documentation, run: info coreutils 'mv invocation'

    1.移动文件

    移动文件时需要注意的是文件的源地址和目标地址必须不同。这里有个例子,想要将file_1.txt文件从当前目录移动到其它目录,以/home/pungki/为例,语法应该如下:

    1. $ mv file_1.txt /home/pungki/office

    mv command

    如我们所见,当我们移动 filetxt 文件时,先前目录的 file1.txt 就被删除了

    2.移动多个文件

    如果想一次移动多个文件,我们可以将他们放在一行并用空格分开。

    1. $ mv file_2.txt file_3.txt file_4.txt /home/pungki/office

    Move multiple files

    如果你的文件有规律可循的话那么你就可以使用通配符。比如,为了移除所有以.txt为扩展名的文件,我们可以用下面的命令:

    1. $ mv *.txt /home/pungki/office

    Move using pattern

    3.移动目录

    不同于复制命令,用 mv 命令移动目录相当直接。移动目录你可以使用不带选项的 mv 命令。看下面的截图就一目了然了。

    Moving directory

    4.重命名文件或目录

    我们也用 mv 命令来重命名文件或目录。不过目标位置和源位置必须相同才可以。然后文件名必须不同。

    假定我们当前所在目录为/home/pungki/Documents,而我们想将file\1.txt重命名为file*2.txt*。那么命令应该如下:

    1. $ mv file_1.txt file_2.txt

    如果是绝对路径,它应该像下面这样:

    1. $ mv /home/pungki/Documents/file_1.txt /home/pungki/Documents/file_2.txt

    Renaming file

    5. 重命名目录

    上一段的规则同样适用于目录。请看这个例子:

    1. $ mv directory_1/ directory_2/

    6. 打印移动信息

    当你移动或重命名一大堆文件或目录时,你可能会想在不去目标位置去查看的情况下知道你自己的命令是否成功地执行了。这就要用到-v选项了。

    1. $ mv -v *.txt /home/pungki/office

    mv with verbose mode

    该方法同样适用于目录。

    mv directory with verbose mode

    7. 使用交互模式

    当你将文件移动到其它位置,而那个位置恰好有同样的文件,这时 mv 命令会覆盖掉原来的文件。对于mv的这一行为一般不会有什么提示。如果想产生一个关于覆盖文件的提示,我们可以使用-i选项。(译注:通常发行版会通过alias命令,将-i作为默认选项,所以会有提示。)

    假设我们想将 file1.txt 移动到 /home/pungki/office。同时,/home/pungki/office 目录下已经有file1.txt文件了。

    1. $ mv -i file_1.txt /home/pungki/office

    mv with interactive mode

    这个提示会让我们知道目标位置处file_1.txt的存在。如果我们按y键,那么那个文件将会被删除,否则不会。

    8. 使用更新选项

    -i 选项会提示我们关于覆盖文件的提示,而 -u 则只在源文件比目标文件新时才执行更新。让我们看一看下面的例子:

    Update only newer

    假如 file1.txt 和 file2.txt有如下特点:

    1. File_1.txt has 84 bytes file size and it last modified time is12:00
    2. File_2.txt has 0 bytes file size and it last modified time is11:59

    我们想将它们移动到 /home/pungki/office 目录下。*但是目标地址已经有file1.txt和file2.txt了。

    我们用下面的命令将file1.txt 和file2.txt从当前目录移动到/home/pungki/office

    1. $ mv -uv *.txt /home/pungki/office

    可以看到这些文件被移动了。能移动这些文件是因为它们最近的修改时间戳比 /home/pungki/office 目录中的文件新。

    9.不要覆盖任何已存在的文件

    如果-i选项询问我们是否要覆盖文件,那么 -n 选项将不会允许我们覆盖任何已存在的文件。

    继续使用第8点中的例子,如果我们将-u 换成 -n同时加上-v选项,那么我们会看到没有任何文件移动到了 /home/pungki/office 目录下。

    1. $ mv -vn *.txt /home/pungki/office

    No overwrite

    10. 复制时创建备份

    默认情况下,移动文件将会覆盖已存在的目标文件。但是如果我们移动错了文件而目标文件已经被新的文件覆盖了,这时应该怎么办才好呢?有没有一种方法可以恢复之前的文件呢?答案是肯定的。我们可以用-b选项。该选项会在新文件覆盖旧文件时将旧文件做备份。这里我们还以第8点为例。

    1. $ mv -bv *.txt /home/pungki/office

    Backup option

    如截图中所见,在 /home/pungki/office 目录下出现了名为file\1.txt~ and file*2.txt~ 的文件。那个波浪符号(~)意味着*这些文件是备份文件。从它们的属性中我们可以看到,这些文件比file1.txt和file2.txt要旧。

    11. 无条件覆盖已经存在的文件

    (译注:这一节是译者补充的,原文遗漏了这个重要选项)

    当你希望无论如何都覆盖已经存在的文件或目录时,你可以使用 -f 选项。如果同时指定了 -f 选项和 -i 或 -n 选项,则 -f 选项会覆盖它们——即不进行任何提示而覆盖,所以,在使用此参数时,知道你在做什么。

    1. $ mv -f *.txt /home/pungki/office

    总结

    移动文件和目录命令是Linux系统的基本命令。通常你可以通过man mv 或者 mv --help显示mv的手册页以了解更多详细信息。

    以上就是良许教程网为各位朋友分享的Linux相关知识。

    展开全文
  • Linux-重命名命令rename

    万次阅读 2017-12-12 19:09:55
    说到重命名,相信大多数和我一样的Linux初学者想到的就是mv ,简单的重命名当然使用mv已经足够,但是比较复杂的重命名(比如根据正则重命名)就需要用到更顺手的工具了,那就是rename 用法$ rename [options] ...

    说到重命名,相信大多数和我一样的Linux初学者想到的就是mv ,简单的重命名当然使用mv已经足够,但是比较复杂的重命名(比如根据正则重命名)就需要用到更顺手的工具了,那就是rename

    用法

    $ rename [options] [perlexpr] [files]

    options

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

    perlexpr

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

    files

    需要重命名的文件

    示例

    最容易掌握命令的方法就是动手试试了,下面来看看一些例子

    去除文件扩展名

    例如我们想把文件扩展名为.bak 的文件扩展名去掉,可以这样

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

    *.bak 为通配符(wildcard),会被shell展开为各个文件名

    去除文件名中的空格

    $ rename 's/ //g' *

    g 是global的意思,替换所有的空格为空字符(也就是删除啦)

    文件名转为小写

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

    这里用到了y 意思是翻译,前后两个字符集是对应的,遇到前面一个字符集(A-Z)里面的字符就换成后面一个字符集(a-z)里面的相应字符。

    使用分组

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

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

    对分组不了解可以去补补正则表达式了。

    展开全文
  • 主要介绍了Linux 重命名命令自制详细介绍的相关资料,需要的朋友可以参考下
  • linux下的文件重命名命令是什么

    千次阅读 2021-05-09 02:35:57
    linux下的文件重命名命令是mv。mv命令用来为文件或目录改名或将文件由一个目录移入另一个目录中,例如【$ mv test.txt wbk.txt】,表示将文件test重命名为webk。本文操作环境:red hat enterprise linux 6.1系统、...
  • linux文件重命名 This tutorial will walk you through the simple steps to rename a file in Linux. 本教程将引导您完成在Linux中重命名文件的简单步骤。 It’s going to be a very simple and straightforward ...
  • 如何在Linux重命名文件

    千次阅读 2021-05-12 01:32:19
    在这个简短的教程中,我们将向您展示如何在Linux中重命名...使用mv命令重命名文件Linux重命名命令的最基本(相对最简单)的方法是使用mv命令。语法如下: mv [选项] oldfilename newfilename这是一个真实的示例...
  •  其实在文本模式中要重命名文件或目录的话也是很简单的,我们只需要使用mv命令可以了,比如说我们要将一个名为abc的文件重命名为1234可以这样来写:mv abc 1234,但是要注意的是,如果当前目录下也有个1234的文件...
  • 使用mv命令重命名多个文件和目录可能是一个乏味的过程,因为它涉及使用管道,循环等编写复杂的命令。这是rename命令派上用场的地方。它通过使用指定的替换名替换其名称中的搜索表达式来重命名给定的文件。在本教程中...
  • Linux文件重命名命令的简单说明

    千次阅读 2014-07-01 14:42:31
    Linux文件重命名的常用命令是mv或rename, 1、mv mv A B 把文件A1.SO得命名为b1.so,可以是mv A1.so b1.so 注意:mv本身是移动命令,因此一次只能重命名一个文件,如果文件A存在,则会直接覆盖原文件。 ...
  • Linux 重命名文件和文件夹

    千次阅读 2022-03-23 18:25:06
    目录 ...mv abc 123 # 将一个名为abc的文件重命名为123,如果当前目录下也有个123的文件的话,这个文件是会将它覆盖的。 2. 使用 rename 命令 1. 版本一: rename old_name new_name <fil...
  • Linux重命名文件或文件夹

    千次阅读 2021-04-21 16:58:02
    其实在文本模式中要重命名文件或目录,只需要使用mv命令就可以了,比如说要将一个名为abc的文件重命名为1234: mv abc 1234 注意,如果当前目录下也有个1234的文件的话,这个文件是会将它覆盖的。 下面介绍Linux
  • Linux系统重命名文件用什么命令

    千次阅读 2021-05-08 23:42:32
    面由学习啦小编为大家整理了linux文件重命名命令的相关知识,希望对大家有帮助!Linux文件重命名命令Linux的文件重命名非常简单,常用的是mv命令和rename命令。其中rename是我们比较熟悉的命令。linux的重命名...
  • inux 重命名基本命令linux 重命名注销:logoutlogin 重新登入exit 退出当前用户关机:shutdown +time 例如:shutdown now(现在、立刻关机)shutdown -c 取消所有关机设置(快捷键:ctrl+c)重新启动计算机: shutdown...
  • 今天用VI写了个TXT文件,想重命名下:rename readme.txt readme1.txt提示参数不够,着实让我摸不着头脑。[liang@www ~]$ lsreadme.txt 公共 模板 视频 图片 文档 下载 音乐 桌面[liang@www ~]$ rename readme.txt ...
  • Linux mv命令重命名文件

    千次阅读 2020-11-11 09:51:44
    Linux mv命令介绍、使用和注意事项。
  • Linux下,如何将一个乱码的文件进行重命名方法一:命令格式:mv $(ls |egrep "[^a-zA-Z0-9.-]") tandao.tx[root@nb o]# ls |egrep "[^a-zA-Z0-9.-]"?°-?ˉ? ###从找到文件中找出乱码文件[root@nb o]# mv $(ls |...
  • 在本教程中,我们将学习使用 Linux 中的 mmv 命令一次重命名多个文件。 此命令用于在类 Unix 操作系统中使用标准通配符批量移动、复制、追加和重命名文件。 在 Linux 中一次重命名多个文件 mmv 程序可在基于 ...
  • LINUX乱码文件重命名

    2021-09-11 14:43:55
    LINUX乱码文件重命名 1 删除乱码文件 1)查看文件节点 ls -i 2) 通过命令 find . -inum 32983551 -exec rm {} ; 2 重命名乱码文件 1)同上 2)命令修改 find . -inum 32983542 -exec mv {} di.c ; 注: 特别要提一下...
  • linux下的文件操作——批量重命名

    千次阅读 2021-05-11 12:17:21
    概述:在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等。文本主要为你讲解如何实现这些操作1、删除所有的 .bak 后缀:rename 's/\.bak$//' *.bak注意,...
  • 其实在文本模式中要重命名文件或目录的话也是很简单的,我们只需要使用mv命令就可以了,比如说我们要将一个名为abc的文件重命名为1234就可以这样来写:mv abc 1234,但是要注意的是,如果当前目录下也有个1234的文件...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 117,752
精华内容 47,100
关键字:

linux文件重命名命令

友情链接: ch29.rar