linux批量文件夹名字,linux: 批量修改文件夹及文件夹下文件的名字

假如我有一个文件夹,文件夹下面有一些文件,如下所示:

Gideon/gideon_lisha/Gideon_samuel/Gideon_nathan.xml

Gideon/lisha_gideon/Gideon_noah.xml

我当前是在根目录Gideon的文件夹,我想写一段shell代码,这个文件夹及文件夹下的所有 Gideon 更换成 Liang,我要的结果如下:

Liang/Liang_lisha/Liang_samuel/Liang_nathan.xml

Liang/lisha_Liang/Liang_noah.xml

我的代码:

replace_file_names.sh

#!/bin/bash

path=$1

filename=$2

newfilename=$3

echo "We are finding '$filename' under the folder '$path'"

count=1

for i in `find $path -iname "*$filename*" | tac`

do

newpath=`echo $i | sed "s@\(.*\)$filename@\1$newfilename@i"`

sudo mv "$i" "$newpath"

echo "${count}: Renaming $i to $newpath"

let count++

done

感谢 susbarbatus

cbd5a61765aed016a56103b68dcc8d51.gif

相关

Related Posts

linux 下批量压缩文件

一堆eps文件要将每个文件单独压缩成一个文件,比如a.eps , b.eps, c.eps 压缩成 a.zip ,b.zip ,c.zip for…

Linux umask限制导致php的mkdir 0777无效

这两天在写一个缓存模块,需要把生成的缓存目录和文件设置成777权限,好让ftp用户可以直接登录删除缓存,蛋疼的事也就这么发生了,明明用了mkdir($path, 0777);用ftp用户登录却删除不了,为什么呢?   查看了一下建立的目录的权限,发现mkdir建立的目录权限都是755的,我明明用的是777,立马google了一下,才知道原来是受Linux 系统的 umask限制了,Linux的umask默认值是0022,所以php 的 mkdir 函数只能建立出755权限的文件夹出来。…

Linux 死机了怎么办

今天在 Linuxgem.org 上面发现一篇很有意思的文章,和大家分享。 {Via http://blog.upsuper.org.cn/what-to-do-if-linux-crash/} Linux 会死机么?我可以很肯定地说,会!要让 Linux 死机很容易,但难的是在死机以后如何安全的让他摆脱死机状态,本文讲述如何从…

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值