linux(uinx)批量修改文件名的命令行

ming内容前要:同事有一个批量改服务器上文件名字的需求。我把在ubuntu上批量修改文件名字的命令给他,但是不能用。因为服务器是unix。所以下面整理一下批量修改文件名的命令。

===================================================我是分隔符================================================

首先 你要先知道 自己所处的服务器环境。

命令:cat /proc/version

接下来介绍 一下ubuntu的批量修改文件名字的命令。

命令 :ls

我们先看一下文件夹下面有哪些 文件

然后讲 文件名中的gg改为yy

命令:rename -v ‘s/gg/yy‘ *

然后 命令:ls ,看一下现在的名字

解释一下 这句命令:

rename -v ‘s/gg/yy‘ *

===================================================我是分隔符================================================

当你不知道 一个命令改如何使用的时候,你可以在命令行敲这个命令

命令:man rename

man命令是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。

ps:按一下q 退出。

*********************************************************************我是分隔符************************************************************************************************

但是上面这个命令不适合unix

同样的命令 man rename

在uinx上显示为:

这就说明在这种环境下,没办法使用上面的方式批量修改文件名字。这时,我们就需要使用for循环来改名。

命令: for i in `ls`; do mv -f $i `echo "6"$i`; done

解释:for i in `ls` 意思 是 循环当前文件夹下的所有文件;  

do mv -f  执行mv 命令,-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;

     $i  代表循环体中每一个文件;

   echo  输出为XXX; 如果是 该文件夹下所有文件一起改名字,那么 前面的命令复制粘贴就可以了,从echo开始改成自己需要的样子就可以了。

   "6"$i`  在所有文件名的前面加上6; 

    done    结束;

该命令的运行结果为:

下面举几个??,更明白点。

命令:for i in `ls`; do mv -f $i `echo $i | sed ‘s/^.//‘`; done

注:sed可依照script的指令,来处理、编辑文本文件。sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

  后面为正则表达式,/^表示正则的开始,. 代表第一位,/ 表示结束。意思为将第一位置为空。

命令:for i in `ls`; do mv -f $i `echo $i | sed ‘s/^./new/‘`; done    将文件名的第一位改为new。

命令:for i in `ls`; do mv -f $i `echo $i | sed ‘s/^/new/‘`; done    在文件名前面添加new。

命令: for i in `ls`; do mv -f $i `echo $i | sed ‘s/$/new/‘`; done    在文件名的后面添加new。

命令: for i in `ls`; do mv -f $i `echo $i | sed ‘s/.$/6/‘`; done    在文件名的后面添加new。

命令:for i in `ls`; do mv -f $i `echo $i | tr A-Z a-z `; done  将文件名的大写字母转为小写字母;

===================================================分隔符==========================================================================

希望吾皇 有一天也对我说这么甜蜜的话。mua

原文地址:https://www.cnblogs.com/lyy9902/p/8677909.html

时间: 2024-11-10 07:08:50

linux(uinx)批量修改文件名的命令行的相关文章

Linux中批量修改文件名

有时候我们有一个目录下面的文件名都需要重新命令 如: 以下有十个学生完成的脚本,现在需要将finish改为ing [[email protected] test]# touch student_{01..10}_finish.sh [[email protected] test]# ls student_* student_01_finish.sh  student_03_finish.sh  student_05_f student_02_finish.sh  student_04_finis

Linux下批量修改文件名(rename)

原文地址: http://blog.csdn.net/sea_shore/article/details/6102437 1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修改文件名, 不过rename实在太方便了 比如把所有的表为cdb1_* 修改为cdb_*的在本目录下只需要# rename 'cdb1' 'cdb' * 以前都是写个for循环来做...想想多傻啊, 呵呵 rename还有更多的功能, 建议man rename下 From:http://www.ha

Linux下批量修改文件名(rename)

1.rename命令批量修改文件名, 其实Linux下可以使用别的办法来批量修改文件名, 不过rename实在太方便了 比如把所有的表为cdb1_* 修改为cdb_*的在本目录下只需要# rename 'cdb1'  'cdb'  * 以前都是写个for循环来做...想想多傻啊, 呵呵 rename还有更多的功能, 建议man rename下 From:http://www.hao32.com/unix-linux/42.html 2.批量更改文件名 rename 通过 man rename 命

linux下批量修改文件名之rename

最近因为突然用到需匹配更换文件名,发现rename命令真是 简单好用,和sed语法及vim 替换很相似. 1. 更改文件名后缀 rename 's/\.txt/\.html/' * 2.增加文件名后缀 rename 's/$/\.txt/' * 3.删除文件名后缀 rename 's/.txt//' * 4.模式匹配修改文件名 rename 's/A-Z/a-z/' or rename 's/(\d)/第$1章/' *

linux下批量修改文件名

作者:iamlaosong 一批文件如下: 03003_anhui_20141206.dat  03005_anhui_20141208.dat  03014_anhui_20141210.dat 03003_anhui_20141207.dat  03005_anhui_20141209.dat  03014_anhui_20141211.dat 03003_anhui_20141208.dat  03005_anhui_20141210.dat  03015_anhui_20141206.d

CMD命令实现批量修改文件名

cmd命令批量修改文件名:  (批量去掉下载电影后的前缀) @echo off for /f "delims=" %%a in ('dir /b/s/a-d [阳光电影www.ygdy8.com].*') do (     set "str=%%~nxa"     setlocal enabledelayedexpansion     ren "%%a" "!str:~20!"     endlocal ) 批量删除文件名特定

(转)linux passwd批量修改用户密码

linux passwd批量修改用户密码 原文:http://blog.csdn.net/xuwuhao/article/details/46618913 对系统定期修改密码是一个很重要的安全常识,通常,我们修改用户密码都使用 passwd user 这样的命令来修改密码,但是这样会进入交互模式,即使使用脚本也不能很方便的批量修改,除非使用expect 这样的软件来实现,难道修改一下密码还需要单独安装一个软件包吗? 不,我们其实还有其他很多方法可以让我们避开交互的,下面具体写一下具体的实现方式:

windows下 批量修改文件名

Windows系统下批量修改文件名的详细步骤 听语音 | 浏览:11135 | 更新:2017-08-06 01:36 | 标签:windows 1 2 3 4 5 6 7 分步阅读 Windows系统下批量修改文件名的详细步骤 工具/原料 Dos命令操作 简单批量修改文件名 1 在Windows系统上批量修改文件名是非常简单的.选择所有的文件,按F2,然后输入一下描述性的文本,按enter键之后,所选的文件会以输入的描述性文字加数字排列. END 多步修改文件名 在任意一个盘中新建一个文件夹,

如何用python从文中获取文件名再用正则表达式批量修改文件名

第零步:问题的提出 我在网上购买了星火英语的六级晨读美文100篇(六级早已高分飘过,不过很喜欢这些文章,买来重新品味),但是发现其文章的命名都为01.txt或10.txt等.为了便于检索需要修改文件名称. 第一步:从文件中取出文件名. 我发现txt文件的第一行为文件名,格式为如:Passage 3. Three Passions I Have Lived for, 后面还有几个换行符.写下如下代码进行第一步修改: import os x = 1 while x < 101: if x < 10