linux shell

关注公众号 jb51net

关闭
首页 > 脚本专栏 > linux shell > shell批量创建文件并重命名

shell批量创建文件并重新命名的实例代码

作者:乌托邦2号

这篇文章主要给大家介绍了关于shell批量创建文件并重新命名的相关资料,文中还介绍了批量删除文件以及文件更名的多种方法,每种方法都给出了详细实例代码,需要的朋友可以参考下

一、问题

     使用for循环批量创建10个文件,从linux-1到linux-10。并将上述文件的前缀改为unix。

二、解决

1、批量删除文件

批量创建命名从linux-1到linux-10的文件。

(1)方法一:常规方法

#使用for循环批量创建10个文件 linux-1到linux-10
#!/bin/sh
 
[ ! -d $PWD/file ] && mkdir -p $PWD/file && exit 1
 
for count in `seq 10`
do
    touch $PWD/file/linux-$count
done

(2)方法二

#使用for循环批量创建10个文件 linux-1到linux-10
#!/bin/sh
 
if [ ! -d $PWD/file ] && mkdir -p $PWD/file
then
    path=$PWD/file
		for count in `seq 10`
		do
				cd $path && touch linux-$count
		done
else
    exit 1
fi

(3)方法三

使用shell命令:touch linux-{1..10}或touch linux-`seq 10`

(4)运行效果

2、文件更名

批量将从linux-1到linux-10的文件重新命名为从unix-1到unix-10的文件。

(1)方法一

#使用for循环批量改名
#!/bin/sh
 
cd $PWD/file
for count in `seq 10`
do
    mv linux-$count unix-$count
done

(2)方法二:常规方法

#使用for循环批量改名
#!/bin/sh
 
if [ -d $PWD/file ] && cd $PWD/file
then
		for filename in `ls linux*`
		do
				mv $filename `echo $filename | sed "s/linux/unix/g"`
		                #等价于 mv $filename unix-`echo $filename | cut -d"-" -f2`
                done
fi

(3)使用shell命令:rename linux unix linux*

(4)运行效果

三、总结

(1)sed、cut的用法可以查阅文档理解。

(2)批量处理的方法还有很多,选择最佳的方法处理。

到此这篇关于shell批量创建文件并重新命名的文章就介绍到这了,更多相关shell批量创建文件并重命名内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文