一、问题
使用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批量创建文件并重命名内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界! |
请发表评论